Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.scanify.com.br/llms.txt

Use this file to discover all available pages before exploring further.

O endpoint POST /classify retorna apenas o tipo do documento (document_type) sem extrair os campos estruturados. É mais rápido e barato quando você só precisa saber o que o usuário enviou.

Quando usar /classify vs /extract

CenárioUse
Roteamento — descobrir o tipo antes de mandar para uma pipeline específica/classify
Pré-validação de upload — rejeitar antes de processar quando o documento está errado/classify
Triagem/catalogação de grandes volumes/classify
Precisa dos campos estruturados (valor, datas, partes, etc.)/extract ou /extract/sync
Precisa do texto OCR em markdown ou das coordenadas dos campos/extract/sync com includeMarkdown ou GETs específicos

Como funciona

  • Apenas síncrono: POST /classify. Não existe variante assíncrona nem fluxo de webhook.
  • Mesmo modelo de autenticação dos demais endpoints (Bearer com sua chave de API).
  • Body aceita application/json (com file: { fileUrl | fileBase64, filename? }) ou multipart/form-data (campo file binário ou fileUrl como string).
  • Campos opcionais: referenceId, metadata, timeout (mínimo 10 s, padrão 60 s, máximo 300 s).
Para os parâmetros completos e respostas detalhadas, veja a referência POST /classify.

Resposta

{
  "request_id": "req_01H...",
  "status": "success",
  "document_type": "BOLETO",
  "confidence": 0.97,
  "reason": "matches_provided_type",
  "document_type_detection": {
    "source": "model",
    "provided_document_type": null,
    "detected_document_type": "BOLETO",
    "confidence": 0.97,
    "accepted": true,
    "reason": "matches_provided_type"
  }
}
  • document_type — tipo detectado, um dos valores listados em Tipos de documento.
  • confidence — confiança do modelo na classificação (0 a 1).
  • reason — código curto explicando a decisão.
  • document_type_detection — bloco com o detalhe da decisão de classificação (origem, comparação, etc.). Veja Confiabilidade para o significado de cada subcampo.
Diferente do /extract, a resposta de classificação não inclui fields, bloco scanify, markdown ou processed_at. Apenas o tipo e a confiança.

Limitações

  • Não aceita arquivos XML. Outros formatos seguem as regras gerais de arquivos suportados.
  • Não há fluxo assíncrono / callback para /classify. Se o seu caso requer processamento em background, use /extract e descarte os campos que não precisar.

Exemplo

curl -X POST https://api.scanify.com.br/classify \
  -H "Authorization: Bearer SUA_CHAVE_DE_API" \
  -H "Content-Type: application/json" \
  -d '{
    "file": {
      "fileUrl": "https://exemplo.com/documento.pdf"
    },
    "referenceId": "pedido-2024-001"
  }'

Extração síncrona

Extrai campos estruturados e retorna o resultado na mesma requisição.

Tipos de documento

Lista completa dos tipos suportados pelo modelo.

Confiabilidade da extração

Como interpretar confidence, reason e os subcampos de detecção.

Erros e códigos

Referência de erros HTTP e códigos de falha da API.