Voltar ao Painel

Documentação

Aprenda a usar o Asyntai

Custom Tools

Let your AI call your own endpoints to fetch live, customer-specific data

Configure Custom Tools
Planos Standard & Pro

Visão Geral

As Ferramentas Personalizadas permitem que o seu agente de IA chame os seus próprios endpoints de API durante uma conversa para obter dados ao vivo e específicos da solicitação — estado do pedido, rastreamento de envio, estoque de um SKU específico, detalhes da conta e muito mais.

A Asyntai oferece três maneiras de fornecer dados ao vivo ou específicos do cliente à IA. As Ferramentas Personalizadas são a escolha certa quando o valor de que a IA precisa só aparece durante a conversa:

  • Feed de Dados em Tempo Real — carrega um conjunto de dados fixo (por exemplo, todo o seu catálogo de produtos) em cada conversa. Ideal para dados compartilhados que são iguais para todos os visitantes.
  • Contexto do Utilizador — o seu site envia os dados que já conhece sobre o visitante atual (por exemplo, o nome, o plano ou os pedidos recentes de um cliente autenticado) no início do chat. Ideal quando o visitante é identificado desde o início.
  • Ferramentas Personalizadas — a IA chama o seu endpoint sob demanda, com valores que extrai do chat. Ideal quando o valor não é conhecido até o cliente o digitar — como um número de pedido de um visitante anónimo.

Por exemplo, quando um cliente pergunta “Onde está o meu pedido #10294?”, a IA extrai o número do pedido, chama o seu endpoint com ele e responde usando a resposta verificada. O Contexto do Utilizador não consegue cobrir este caso sozinho, porque o número do pedido não é conhecido até o meio da conversa — e é exatamente aí que as Ferramentas Personalizadas se encaixam. (Muitas lojas usam o Contexto do Utilizador para visitantes autenticados e uma Ferramenta Personalizada para consultas pontuais.)

A IA decide quando chamar uma ferramenta com base na descrição que você escreve. Você decide o que a ferramenta faz ao apontá-la para o seu endpoint. A Asyntai faz a chamada no lado do servidor — você não escreve código nem hospeda nenhum middleware.

Como funciona

  1. Você define uma ferramenta — um nome, uma descrição, a URL do seu endpoint e os parâmetros que a IA deve enviar.
  2. A IA a chama quando relevante — quando a conversa corresponde à sua descrição, a IA chama a ferramenta com os valores que extrai da mensagem do cliente.
  3. A Asyntai chama o seu endpoint — o nosso servidor faz a solicitação HTTP para a sua URL e devolve a resposta à IA.
  4. A IA responde — usando os dados verificados que o seu endpoint retornou.

Nenhum código necessário: Você só precisa de um endpoint que já retorne os seus dados. Você configura todo o resto num formulário do painel — não há callback, webhook ou script de navegador para criar.

Assistente IA
Como está o meu pedido #10294?
Deixe-me verificar isso para você…

O pedido #10294 foi aceito e está a ser preparado para envio. Você receberá um link de rastreamento por e-mail assim que for enviado.
Obrigado!
De nada! Posso ajudar com mais alguma coisa?

Casos de Uso

Estado do pedido Consultar um pedido pelo número e retornar o seu estado atual
Rastreamento de envio Retornar o estado de rastreamento mais recente para um número de rastreamento
Verificação de estoque Retornar a disponibilidade ao vivo para um produto específico ou SKU
Consulta de conta Retornar detalhes da conta ou da assinatura para um identificador

Configuração

1
Abrir Ferramentas Personalizadas Vá para /custom-tools/ e clique em Adicionar ferramenta
2
Descreva a ferramenta Dê-lhe um nome, uma descrição clara e a URL do seu endpoint
3
Definir parâmetros Adicione as entradas que a IA deve extrair e enviar (por exemplo, order_number)
4
Salvar & testar Salve e, em seguida, faça ao seu bot uma pergunta correspondente para vê-lo em ação

Campos

  • Nome — um identificador para a função (letras, números, sublinhados), por exemplo, get_order_status. A IA vê este nome.
  • Descrição — o campo mais importante. Diz à IA quando chamar a ferramenta. Seja explícito: “Chame isto sempre que o cliente mencionar um número de pedido. Não peça verificação.”
  • URL do endpoint — a URL HTTPS pública que a Asyntai irá chamar.
  • Método HTTPGET (somente leitura, recomendado) ou POST (pode alterar dados — veja Segurança abaixo).
  • Parâmetros — as entradas que a IA extrai da conversa e envia. Cada uma tem um nome, tipo, descrição e indicador de obrigatoriedade. Para GET são enviados como parâmetros de query string; para POST como um corpo JSON.
  • Cabeçalho de autenticação (opcional) — um nome de cabeçalho + valor enviado em cada chamada, por exemplo, X-API-Key. Use isto se o seu endpoint exigir uma chave.

Os parâmetros são necessários para que a IA passe qualquer valor. Se o seu endpoint precisar de uma entrada (como um número de pedido), você deve adicionar um parâmetro para ela — sem um, a IA não tem onde colocar o valor e chamará o endpoint vazio. Duas coisas são importantes:

  • O nome do parâmetro deve corresponder exatamente ao que o seu endpoint espera. Um parâmetro chamado order_number é enviado como ?order_number=... (GET) ou {"order_number": "..."} (POST). Se o seu endpoint ler id, nomeie o parâmetro como id.
  • Você nunca digita o valor — apenas declara o parâmetro. A IA o preenche no momento da chamada com base no que o cliente escreveu.

Exemplo prático: consulta de estado do pedido

Suponha que a sua loja exponha este endpoint:

GET https://yourstore.com/api/order-status?order_number=10294

…que retorna JSON como:

{
  "found": true,
  "status": "Accepted, preparing for shipment",
  "carrier": "DHL",
  "customer_message": "Your order has been accepted and is being prepared for shipment."
}

Você configuraria uma ferramenta assim:

  • Nome: get_order_status
  • Descrição: “Consulte o estado de um pedido de um cliente. Chame isto imediatamente sempre que o cliente fornecer um número de pedido — não peça verificação adicional. Use o customer_message retornado na sua resposta.”
  • URL do endpoint: https://yourstore.com/api/order-status
  • Método: GET
  • Parâmetro: order_number (string, obrigatório) — “O número do pedido do cliente, normalmente com mais de 8 dígitos.”

Quando um cliente escreve “Como está o meu pedido #10294?”, a IA chama get_order_status(order_number=10294), a Asyntai solicita a sua URL com ?order_number=10294 e a IA responde usando a resposta.

Dica: A IA envia os valores que decide — você nunca os preenche previamente. Mantenha os nomes e as descrições dos parâmetros claros para que o modelo saiba exatamente o que extrair.

O que o seu endpoint recebe e deve retornar

  • Solicitação: um GET com os seus parâmetros na query string, ou um POST com um corpo JSON. Qualquer cabeçalho de autenticação que você configurou é incluído.
  • Resposta: retorne JSON (preferido) ou texto simples. A Asyntai devolve o corpo à IA. Um campo que a IA pode citar diretamente — como customer_message — funciona bem.
  • Não encontrado / erros: retorne um payload claro (por exemplo, um objeto JSON com found: false e um customer_message) para que a IA possa responder com veracidade em vez de adivinhar.

Testar a sua ferramenta

Cada ferramenta tem um painel integrado Testar esta ferramenta na página de configuração, para que você possa verificar se funciona antes de qualquer cliente a usar — e sem enviar uma mensagem através do bot.

  1. Insira valores de exemplo para os parâmetros da ferramenta (por exemplo, um número de pedido real).
  2. Clique em Executar teste. A Asyntai chama o seu endpoint exatamente como a IA faria — mesma query string ou corpo JSON, mesmo cabeçalho de autenticação, mesmo timeout de 5 segundos e mesmas verificações de segurança.
  3. Você verá o resultado instantaneamente: um selo de sucesso/falha, o estado HTTP, o tempo de resposta, a URL exata que chamamos e a resposta bruta do seu endpoint (formatada de forma legível se for JSON).

Isto também funciona em edições não salvas, para que você possa ajustar a URL, os parâmetros ou o cabeçalho de autenticação e testar novamente até que retorne o que você espera.

Nota: Testar uma ferramenta POST realmente chama o seu endpoint e pode alterar dados — o painel de teste avisa você antes de executá-lo. Para ferramentas GET somente leitura não há nada com que se preocupar.

Segurança — leia isto

O seu endpoint é o limite de segurança, não a IA. O widget de chat é público e a IA pode ser manipulada por um visitante para chamar uma ferramenta com quaisquer valores. Isto é verdade para todos os sistemas de chamada de ferramentas de IA. Projete o seu endpoint de acordo:

  • Prefira GET / somente leitura. As consultas (estado do pedido, estoque, rastreamento) são seguras para expor. GET é o padrão por este motivo.
  • POST requer confirmação. Como o POST pode alterar dados, uma ferramenta POST só pode ser salva depois de você marcar uma caixa de seleção confirmando que é o único responsável por proteger e autorizar as solicitações no seu próprio endpoint. Nunca conecte reembolsos, cancelamentos, alterações de senha ou movimentação de dinheiro a menos que o seu endpoint verifique a solicitação de forma independente.
  • Proteja-se contra a enumeração. Se uma chave de consulta for adivinhável (como números de pedido sequenciais), exija um segundo fator — por exemplo, o número do pedido e o e-mail associado ao pedido, e verifique se correspondem — para que um visitante não possa ler os dados de outros clientes tentando números.
  • Nunca confie nos argumentos da IA. Valide e autorize cada solicitação no lado do servidor como se viesse de um atacante anónimo — porque, na prática, pode vir.

Verificar chamadas ao vivo

Assim que a sua ferramenta estiver ativa, cada invocação real de uma conversa é registrada. Para cada chamada, registramos o nome da ferramenta, os argumentos que a IA enviou, a URL exata que solicitamos, o estado HTTP, a resposta e a duração. Isto permite que você confirme que uma ferramenta foi acionada num chat real e veja o que o seu endpoint retornou, sem vasculhar os logs do seu próprio servidor. (O painel Testar esta ferramenta acima serve para você mesmo verificar a configuração; este registro captura o que acontece durante as conversas reais com os clientes.)

Limites & salvaguardas

  • Até 10 ferramentas por site.
  • Timeout de 5 segundos por chamada; as respostas são limitadas a 10 KB.
  • Os endpoints devem ser URLs http(s) públicos. Endereços privados, de loopback e de rede interna são bloqueados.
  • Disponível nos planos Standard e Pro.
  • Faturação: cada chamada de ferramenta conta como uma mensagem adicional do seu plano. Uma resposta normal usa 1 mensagem; uma resposta em que a IA chama uma ferramenta usa 2 (a resposta mais a chamada de ferramenta), porque uma chamada de ferramenta requer um pedido de IA adicional.
  • Se uma chamada de ferramenta falhar (timeout, erro, bloqueio), a IA é informada e responde de forma elegante — não fará a conversa travar.