Skip to main content
POST
https://suasofia.online/api/
/
user
/
knowledgebases
/
{knowledgebaseId}
/
documents
Criar documento
curl --request POST \
  --url https://suasofia.online/api/user/knowledgebases/{knowledgebaseId}/documents \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "description": "<string>",
  "type": "<string>",
  "url": "<string>",
  "links": [
    {
      "link": "<string>"
    }
  ],
  "relative_links_limit": 123
}
'
{
  "message": "Documento criado com sucesso. O processamento começará em breve.",
  "data": {
    "id": 1,
    "name": "Website da Empresa",
    "description": "Conteúdo do website principal",
    "type": "website",
    "type_label": "Website",
    "status": "processing",
    "status_label": "Processando",
    "created_at": "2025-01-08T10:30:00.000000Z"
  }
}
Este endpoint cria um novo documento em uma base de conhecimento. Os documentos são processados de forma assíncrona - o endpoint retorna imediatamente enquanto o processamento continua em segundo plano.

Parâmetros de Caminho

knowledgebaseId
integer
required
O identificador único da base de conhecimento

Corpo da Requisição

name
string
required
O nome do documento (máx. 255 caracteres)
description
string
Descrição opcional do documento (máx. 255 caracteres)
type
string
required
Tipo de documento: website, pdf, txt ou docx

Documentos de Website

url
string
A URL principal para fazer scraping. Obrigatório se links não for fornecido.
Array de URLs específicas para fazer scraping. Obrigatório se url não for fornecido.
Número máximo de links relativos a seguir durante o scraping (1-50)

Documentos de Arquivo (PDF, TXT, DOCX)

file
file
required
O arquivo para upload (máx. 20MB). Use codificação multipart/form-data.

Resposta

message
string
Mensagem de sucesso
data
object
O objeto de documento criado
{
  "message": "Documento criado com sucesso. O processamento começará em breve.",
  "data": {
    "id": 1,
    "name": "Website da Empresa",
    "description": "Conteúdo do website principal",
    "type": "website",
    "type_label": "Website",
    "status": "processing",
    "status_label": "Processando",
    "created_at": "2025-01-08T10:30:00.000000Z"
  }
}

Tipos de Documento

TipoDescriçãoEntrada
websiteFaz scraping de páginas web e extrai conteúdo de textoURL ou lista de URLs
pdfExtrai texto de arquivos PDFUpload de arquivo PDF
txtConteúdo de texto simplesUpload de arquivo TXT
docxExtrai texto de documentos WordUpload de arquivo DOCX

Exemplo: Criando um Documento de Website

curl -X POST https://suasofia.online/api/user/knowledgebases/1/documents \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Website da Empresa",
    "description": "Conteúdo do website principal",
    "type": "website",
    "url": "https://example.com",
    "relative_links_limit": 20
  }'

Exemplo: Fazendo Upload de um Documento PDF

curl -X POST https://suasofia.online/api/user/knowledgebases/1/documents \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "name=Manual do Produto" \
  -F "description=Guia do usuário para nosso produto" \
  -F "type=pdf" \
  -F "file=@/caminho/para/documento.pdf"
O processamento de documentos é assíncrono. Consulte o endpoint get document para verificar quando o processamento estiver completo.