Pular para o conteúdo principal

Integração da API

Envie dados programaticamente para sua base de conhecimento AI SmartTalk usando nossa API REST. Ideal para integrações personalizadas, pipelines automatizados e qualquer fonte de dados não coberta por nossos conectores nativos.


Visão Geral

A integração da API permite que você:

  • Envie documentos diretamente para sua base de conhecimento
  • Atualize conteúdo programaticamente
  • Exclua entradas desatualizadas
  • Construa pipelines de dados personalizados
  • Integre-se com qualquer sistema que possa fazer requisições HTTP

Pré-requisitos

Antes de começar, certifique-se de que você possui:

  • Uma conta ativa do AI SmartTalk
  • Acesso à API habilitado (verifique seu plano)
  • Conhecimento básico sobre APIs REST
  • Uma ferramenta para fazer requisições HTTP (curl, Postman ou seu código de aplicação)

Obtendo suas Credenciais da API

Passo 1: Acessar Configurações da API

  1. Faça login na sua conta do AI SmartTalk
  2. Navegue até ConfiguraçõesIntegrações
  3. Encontre API e clique em Configurar

Passo 2: Gerar Token da API

  1. Clique em Gerar Novo Token
  2. Copie seu ID do Modelo de Chat e Token da API
  3. Armazene esses dados com segurança—o token é exibido apenas uma vez!

⚠️ Aviso de Segurança: Nunca exponha seu token da API em código do lado do cliente ou repositórios públicos.


Endpoints da API

URL Base

https://api.aismarttalk.tech/v1

Autenticação

Todas as requisições requerem seu token da API no cabeçalho:

Authorization: Bearer YOUR_API_TOKEN

API Endpoints

Base URL

https://api.aismarttalk.tech/v1

Authentication

Todas as requisições requerem seu token de API no cabeçalho:

Authorization: Bearer YOUR_API_TOKEN

Importar Documentos

Endpoint

POST /documents/import

Corpo da Requisição

{
"chatModelId": "your-chat-model-id",
"documents": [
{
"title": "Documentação do Produto",
"content": "Conteúdo completo do seu documento vai aqui...",
"url": "https://example.com/docs/product",
"metadata": {
"category": "documentation",
"language": "en"
}
}
]
}

Parâmetros

CampoTipoObrigatórioDescrição
chatModelIdstringSeu identificador único do modelo de chat
documentsarrayArray de objetos de documento
documents[].titlestringTítulo do documento para identificação
documents[].contentstringConteúdo de texto completo
documents[].urlstringURL de origem (para referência)
documents[].metadataobjectPares chave-valor personalizados

Resposta

{
"success": true,
"imported": 1,
"documents": [
{
"id": "doc_abc123",
"title": "Documentação do Produto",
"status": "processing"
}
]
}

Exemplo: cURL

curl -X POST https://api.aismarttalk.tech/v1/documents/import \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"chatModelId": "your-chat-model-id",
"documents": [
{
"title": "Guia de Introdução",
"content": "Bem-vindo à nossa plataforma. Aqui está como começar...",
"url": "https://docs.example.com/getting-started"
}
]
}'

Consultar Documentos

Faça perguntas à sua base de conhecimento programaticamente.

Endpoint

POST /chat/query

Corpo da Requisição

{
"chatModelId": "your-chat-model-id",
"query": "Como redefinir minha senha?",
"options": {
"maxTokens": 500,
"temperature": 0.7
}
}

Resposta

{
"success": true,
"response": "Para redefinir sua senha, navegue até Configurações > Segurança > Alterar Senha...",
"sources": [
{
"documentId": "doc_abc123",
"title": "Guia de Segurança",
"relevance": 0.95
}
]
}

Recuperar Documentos

Obtenha documentos que correspondam a uma consulta (sem resposta de IA).

Endpoint

POST /documents/search

Corpo da Requisição

{
"chatModelId": "your-chat-model-id",
"query": "segurança da senha",
"limit": 10
}

Resposta

{
"success": true,
"documents": [
{
"id": "doc_abc123",
"title": "Melhores Práticas de Segurança",
"content": "...",
"relevance": 0.92
}
]
}

Exemplos de Código

Python

import requests

API_TOKEN = "your-api-token"
CHAT_MODEL_ID = "your-chat-model-id"

def import_document(title: str, content: str, url: str = None):
response = requests.post(
"https://api.aismarttalk.tech/v1/documents/import",
headers={
"Authorization": f"Bearer {API_TOKEN}",
"Content-Type": "application/json"
},
json={
"chatModelId": CHAT_MODEL_ID,
"documents": [{
"title": title,
"content": content,
"url": url
}]
}
)
return response.json()

# Importar um documento
result = import_document(
title="FAQ: Envio",
content="Oferecemos frete grátis em pedidos acima de $50...",
url="https://shop.example.com/faq/shipping"
)
print(result)

JavaScript / Node.js

const API_TOKEN = 'your-api-token';
const CHAT_MODEL_ID = 'your-chat-model-id';

async function importDocument(title, content, url = null) {
const response = await fetch('https://api.aismarttalk.tech/v1/documents/import', {
method: 'POST',
headers: {
'Authorization': `Bearer ${API_TOKEN}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
chatModelId: CHAT_MODEL_ID,
documents: [{
title,
content,
url
}]
})
});
return response.json();
}

// Importar um documento
importDocument(
'FAQ: Devoluções',
'Você pode devolver itens dentro de 30 dias após a compra...',
'https://shop.example.com/faq/returns'
).then(console.log);

PHP

<?php
$apiToken = 'your-api-token';
$chatModelId = 'your-chat-model-id';

$data = [
'chatModelId' => $chatModelId,
'documents' => [
[
'title' => 'Especificações do Produto',
'content' => 'Nosso widget tem as seguintes especificações...',
'url' => 'https://example.com/products/widget'
]
]
];

$ch = curl_init('https://api.aismarttalk.tech/v1/documents/import');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiToken,
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

$response = curl_exec($ch);
curl_close($ch);

print_r(json_decode($response, true));

Casos de Uso

Integração de CMS Personalizado

Sincronizar conteúdo de um CMS proprietário:

  • Conectar-se a eventos de publicação do CMS
  • Enviar conteúdo novo/atualizado para o AI SmartTalk
  • Remover conteúdo deletado

Pipeline de Dados

Importar de armazéns de dados:

  • Exportar dados relevantes para JSON
  • Importação em lote via API
  • Agendar atualizações regulares

Produtos de E-commerce

Sincronizar dados de produtos de sistemas personalizados:

  • Descrições de produtos
  • Especificações
  • Informações de preços

Sistemas Internos

Conectar ferramentas internas não suportadas nativamente:

  • Wikis personalizados
  • Bancos de dados legados
  • Aplicações proprietárias

Limites de Taxa

EndpointLimite de Taxa
Importação de Documentos100 requisições/minuto
Consulta60 requisições/minuto
Pesquisa60 requisições/minuto

Nota: Os limites de taxa variam conforme o plano. Entre em contato com o suporte para limites mais altos.


Tratamento de Erros

Formato de Resposta de Erro

{
"success": false,
"error": {
"code": "INVALID_TOKEN",
"message": "O token da API fornecido é inválido ou expirou"
}
}

Códigos de Erro Comuns

CódigoDescriçãoSolução
INVALID_TOKENToken inválido ou expiradoRegenerar token da API
INVALID_MODEL_IDID de modelo de chat desconhecidoVerifique seu ID de Modelo de Chat
RATE_LIMITEDMuitas requisiçõesImplemente backoff, tente novamente mais tarde
INVALID_REQUESTCorpo da requisição malformadoVerifique a estrutura do JSON
DOCUMENT_TOO_LARGEConteúdo excede o limiteDivida em documentos menores
QUOTA_EXCEEDEDLimites do plano atingidosFaça upgrade ou entre em contato com o suporte

Solução de Problemas

Falhas de Autenticação

ProblemaSolução
401 Não AutorizadoVerifique se o token está correto e ativo
Token não funcionandoRegenerar token nas configurações
Token expiradoTokens não expiram, mas podem ser revogados

Problemas de Importação

ProblemaSolução
Resposta vaziaVerifique se o Content-Type é application/json
Documento não aparecendoAguarde o processamento; verifique a seção de Conhecimento
Importação parcialAlguns documentos podem ter erros de validação

Problemas de Desempenho

ProblemaSolução
Importações lentasAgrupe documentos (máx. 100 por requisição)
TimeoutsReduza o tamanho do lote, tente novamente com backoff
Limite de taxa atingidoImplemente backoff exponencial

Melhores Práticas

  1. Importações em lote: Envie vários documentos por requisição (até 100)
  2. Títulos únicos: Use títulos descritivos e únicos para cada documento
  3. Conteúdo estruturado: Conteúdo bem formatado melhora as respostas da IA
  4. Tagueamento de metadados: Use metadados para categorização e filtragem
  5. Tokens seguros: Armazene tokens em variáveis de ambiente
  6. Tratar erros: Implemente lógica de repetição com backoff exponencial
  7. Monitorar uso: Acompanhe chamadas da API em relação aos limites do seu plano

Documentação Relacionada

Pronto para elevar sua
experiência do usuário?

Implemente assistentes de IA que encantam os clientes e escalem com seu negócio.

Conforme o GDPR