Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.deepxl.ai/llms.txt

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

A API de Detecção de Fraude usa IA forense para detectar documentos e imagens manipulados, alterados e gerados por IA em tempo real.

Modelos disponíveis

ModeloCaso de usoTipos de arquivo compatíveis
documentDetecta documentos e IDs gerados por IA ou alterados (extratos bancários, faturas, passaportes, carteiras de motorista)jpg, jpeg, png, webp, pdf
objectDetecta imagens geradas por IA ou manipuladas (fotos, evidências de sinistro, comprovantes)jpg, jpeg, png, webp
Recupere programaticamente a lista completa de modelos:
curl https://api.deepxl.ai/v1/detection-models \
  -H "x-api-key: YOUR_API_KEY"

Tipos de documentos compatíveis

A classe de modelo document classifica arquivos enviados em 71 tipos por meio da verificação DOCUMENT_CLASSIFIER, organizados em 8 categorias:

Identidade (11 tipos)

TipoDescrição
driver_licenseCarteira de motorista
national_idCarteira de identidade nacional
municipal_idDocumento de identidade municipal / local
passportPassaporte
passport_cardCartão de passaporte
residence_cardCartão de permissão de residência
work_authorizationAutorização / permissão de trabalho
military_idIdentificação militar
professional_idLicença / identificação profissional
voter_registration_cardTítulo de eleitor
social_security_cardCartão do Seguro Social

Financeiro (19 tipos)

TipoDescrição
bank_statementExtrato bancário
business_bank_statementExtrato de conta bancária empresarial
checkCheque individual
list_of_checks_cashedLista de cheques compensados
check_registerRegistro de cheques
investment_statementExtrato de investimentos / corretora
retirement_account_statementExtrato de conta de aposentadoria
pension_statementExtrato de pensão
annuity_award_letterCarta de concessão de anuidade
social_security_statementExtrato do Seguro Social
social_security_cola_noticeAviso de COLA do Seguro Social
disability_income_verificationVerificação de renda por invalidez
credit_card_statementFatura de cartão de crédito
mortgage_statementExtrato de hipoteca
auto_loan_statementExtrato de financiamento de veículo
student_loan_statementExtrato de empréstimo estudantil
personal_loan_statementExtrato de empréstimo pessoal
heloc_statementExtrato de linha de crédito com garantia imobiliária
loan_statementExtrato de empréstimo (genérico)

Fiscal (9 tipos)

TipoDescrição
form_1040Formulário 1040 do IRS (declaração de imposto de renda pessoa física)
form_1120Formulário 1120 do IRS (C-Corporation)
form_1120sFormulário 1120S do IRS (S-Corporation)
form_1065Formulário 1065 do IRS (Partnership)
w2_formDeclaração de salários e impostos W-2
form_1099Formulário fiscal 1099
schedule_cSchedule C do IRS (renda empresarial)
schedule_eSchedule E do IRS (renda de aluguel)
tax_returnDeclaração de imposto (genérica)

Emprego (7 tipos)

TipoDescrição
pay_stubHolerite / comprovante de rendimentos
employment_verification_letterCarta de verificação de emprego
direct_deposit_verificationVerificação de depósito direto
unemployment_benefits_documentDocumento de benefício de desemprego
military_lesMilitary Leave and Earnings Statement
offer_letterCarta de oferta
self_employment_ledgerRegistro de trabalho autônomo

Propriedade (6 tipos)

TipoDescrição
property_deedEscritura de imóvel
property_tax_receiptRecibo de imposto sobre propriedade
hoa_dues_statementExtrato de taxas de HOA / condomínio
lease_agreementContrato de locação
rental_receiptRecibo de aluguel
title_insurance_policyApólice de seguro de título

Seguro (6 tipos)

TipoDescrição
homeowners_insurance_declarations_pagePágina de declarações do seguro residencial
homeowners_insurance_binderBinder do seguro residencial
flood_insurance_declarations_pagePágina de declarações do seguro contra enchentes
auto_insurance_declarations_pagePágina de declarações do seguro automotivo
insurance_cardCartão de seguro
insurance_documentDocumento da apólice de seguro

Comercial (6 tipos)

TipoDescrição
business_licenseLicença comercial
articles_of_incorporationContrato social / atos constitutivos
profit_and_loss_statementDemonstrativo de lucros e perdas
utility_billConta de serviço público (energia, água, gás etc.)
phone_billConta de telefone
petty_cash_receiptRecibo de caixa pequeno

Jurídico (7 tipos)

TipoDescrição
government_letterCarta governamental (IRS, DMV, SSA etc.)
vehicle_registrationRegistro de veículo
vehicle_titleTítulo de veículo
court_orderOrdem judicial
power_of_attorneyProcuração
death_certificateCertidão de óbito
marriage_certificateCertidão de casamento
Arquivos que não correspondem a um tipo conhecido são classificados como other.

Analisando um arquivo

Envie um arquivo para detecção de fraude via POST /v1/detection:
curl -X POST https://api.deepxl.ai/v1/detection \
  -H "x-api-key: YOUR_API_KEY" \
  -F "model=document" \
  -F "file=@invoice.pdf" \
  -F 'tags={"customerId":"9999","customerName":"Acme Corp","documentId":"INV-001","companyName":"DeepXL","companyId":"COMP-001"}'

Parâmetros

ParâmetroTipoObrigatórioDescrição
modelstringSimdocument ou object
filefileSimO arquivo a ser analisado (máx. 50 MB)
tagsstringNãoObjeto JSON com pares chave-valor de metadados
countrystringNãoDica opcional de país. Valores compatíveis: us, mx, br. Valores ausentes, vazios ou inválidos assumem, por padrão, us.
O tamanho máximo do arquivo é 50 MB. Arquivos que excederem esse limite serão rejeitados com um erro 413.

Comportamento da dica de país

Use o parâmetro opcional country quando quiser que a API encaminhe ou anote a requisição com uma dica explícita de mercado.
  • Valores compatíveis: us, mx, br
  • A correspondência não diferencia maiúsculas de minúsculas
  • Espaços em branco no início e no fim são ignorados
  • Valores ausentes, vazios ou inválidos retornam para us
Esta é uma dica de requisição, não uma alegação detectada sobre o país emissor. O serviço armazena o valor normalizado nos metadados e o retorna na resposta quando disponível. Exemplo:
curl -X POST https://api.deepxl.ai/v1/detection \
  -H "x-api-key: YOUR_API_KEY" \
  -F "model=document" \
  -F "file=@invoice.pdf" \
  -F "country=mx" \
  -F 'tags={"customerId":"9999","customerName":"Acme Corp","documentId":"INV-001","companyName":"DeepXL","companyId":"COMP-001"}'

Estrutura da resposta

Uma resposta de detecção contém os seguintes campos:
{
  "result": {
    "detectionId": 42,
    "mediaType": "document",
    "fileType": "pdf",
    "fileName": "bank_statement.pdf",
    "fileSize": 245678,
    "timestamp": 1725795600,
    "timestampISO": "2024-09-08T10:00:00.000000",
    "model": "document",
    "modelVersion": "1.1.0",
    "likelihood": 85.2,
    "fraudSeverity": "high",
    "classification": "verified",
    "reasoning": [
      "Potential manipulation detected in text region",
      "Font inconsistencies found"
    ],
    "modelResults": {
      "technicalChecks": [
        {
          "type": "DOCUMENT_CLASSIFIER",
          "status": "PASS",
          "details": "Classified as bank statement",
          "likelihood": 0.02
        },
        {
          "type": "SEMANTIC_FRAUD",
          "status": "FAIL",
          "details": "Detected inconsistencies in text formatting",
          "likelihood": 0.85
        }
      ]
    },
    "tags": [
      { "name": "customerId", "value": "9999" },
      { "name": "customerName", "value": "Acme Corp" },
      { "name": "documentId", "value": "INV-001" },
      { "name": "companyName", "value": "DeepXL" },
      { "name": "companyId", "value": "COMP-001" }
    ],
    "files": [
      {
        "category": "original_file",
        "fileName": "fd_42_bank_statement.pdf",
        "fileSize": 245678,
        "contentType": "application/pdf",
        "timestamp": 1725795600,
        "timestampISO": "2024-09-08T10:00:00.000000",
        "url": "https://api.deepxl.ai/v1/files/fd_42_bank_statement.pdf"
      },
      {
        "category": "heatmap",
        "fileName": "fd_42_heatmap_1.png",
        "fileSize": 45678,
        "contentType": "image/png",
        "timestamp": 1725795600,
        "timestampISO": "2024-09-08T10:00:00.000000",
        "url": "https://api.deepxl.ai/v1/files/fd_42_heatmap_1.png"
      }
    ]
  }
}

Referência dos campos

CampoTipoDescrição
detectionIdintegerIdentificador único do registro de detecção
mediaTypestringCategoria do tipo de mídia (image ou document)
fileTypestringExtensão do arquivo (jpeg, png, pdf, webp)
fileNamestringNome original do arquivo enviado
fileSizeintegerTamanho do arquivo em bytes
timestampintegerTimestamp Unix da análise
timestampISOstringTimestamp ISO 8601 da análise
modelstringModelo usado (document ou object)
modelVersionstringVersão do modelo usada na análise
likelihoodfloatProbabilidade de fraude em porcentagem (0–100)
fraudSeveritystringNível de severidade: low, medium ou high
classificationstringAvaliação de qualidade: verified, unverified ou rejected
reasoningstring[]Explicações em linguagem natural sobre os achados da análise
modelResultsobjectContém o array technicalChecks com resultados detalhados das verificações
tagsobject[]Tags de metadados associadas a esta detecção
filesobject[]Arquivos associados (upload original, mapas de calor)

Entendendo os resultados

Pontuação de probabilidade

O campo likelihood é uma pontuação de 0–100% que indica a probabilidade de fraude ou manipulação:
FaixaSeveridadeInterpretação
0–29%lowNenhum indicador significativo de manipulação
30–69%mediumAlguns indicadores de manipulação detectados
70–100%highFortes indicadores de fraude detectados

Classificação

O campo classification indica a avaliação de qualidade do documento — se o documento passou por todos os filtros de qualidade e pôde ser analisado corretamente. Isso é separado do resultado de fraude (likelihood / fraudSeverity).
ClassificaçãoSignificado
verifiedA qualidade do documento é boa — passou por todos os filtros de qualidade e foi totalmente analisado
unverifiedA qualidade do documento é insuficiente — a imagem está borrada, os cantos estão cortados ou as verificações semânticas de qualidade falharam
rejectedO tipo de documento não é compatível, o conteúdo textual é insuficiente ou vários documentos foram enviados em um único arquivo

Raciocínio

O array reasoning contém explicações em linguagem natural sobre os achados da análise. Cada entrada descreve uma observação específica ou conclusão da análise forense.

Verificações técnicas

O array modelResults.technicalChecks contém as verificações forenses individuais realizadas no arquivo. O número e o tipo de verificações variam dependendo do modelo, tipo de arquivo e conteúdo do documento. Cada objeto de verificação inclui:
CampoTipoDescrição
typestringIdentificador da verificação
statusstringPASS, FAIL, WARNING ou NOT_PRESENT
detailsstringExplicação legível por humanos do resultado da verificação
likelihoodfloatPontuação de confiança para esta verificação específica (0.0–1.0)

Valores de status

StatusSignificado
PASSVerificação aprovada — nenhum problema encontrado
FAILVerificação reprovada — problema detectado
WARNINGPotencial preocupação — não é conclusivo, mas vale observar
NOT_PRESENTA verificação não pôde ser realizada — os dados necessários não estavam disponíveis no arquivo

Modelo de documento

O modelo document executa um pipeline de múltiplas etapas. Primeiro, uma série de filtros de qualidade determina a classification (se o documento pode ser analisado corretamente). Em seguida, verificações paralelas de fraude analisam o documento em busca de manipulação e determinam a pontuação likelihood. Verificações adicionais podem ser executadas dependendo do tipo de arquivo e da categoria do documento.

Modelo de objeto

O modelo object retorna resultados de detecção de fraude por meio dos campos de nível superior likelihood, fraudSeverity e reasoning. O array technicalChecks estará vazio para o modelo de objeto. Quando a geração ou manipulação por IA é detectada, um mapa de calor é incluído no array files destacando as regiões suspeitas.
{
  "files": [
    {
      "category": "original_file",
      "fileName": "fd_42_bank_statement.pdf",
      "url": "https://api.deepxl.ai/v1/files/fd_42_bank_statement.pdf"
    },
    {
      "category": "heatmap",
      "fileName": "fd_42_heatmap_1.png",
      "url": "https://api.deepxl.ai/v1/files/fd_42_heatmap_1.png"
    },
    {
      "category": "heatmap",
      "fileName": "fd_42_heatmap_2.png",
      "url": "https://api.deepxl.ai/v1/files/fd_42_heatmap_2.png"
    }
  ]
}
Baixe um heatmap usando o endpoint de recuperação de arquivos:
curl https://api.deepxl.ai/v1/files/fd_42_heatmap_1.png \
  -H "x-api-key: YOUR_API_KEY" \
  --output heatmap_page1.png

Categorias de arquivo

CategoriaDescrição
original_fileO arquivo que você enviou originalmente
heatmapHeatmap gerado destacando regiões de manipulação detectadas

Códigos de erro

StatusErroDescrição
400Solicitação inválidaNome de modelo inválido, parâmetro de ordenação inválido, JSON malformado em tags ou parâmetros de consulta inválidos
401Não autorizadoChave de API ausente ou inválida
404Não encontradoRegistro de detecção não encontrado
413Payload muito grandeO arquivo excede o tamanho máximo de 50 MB
415Tipo de mídia não suportadoO tipo de arquivo não é compatível com o modelo selecionado
500Erro interno do servidorErro inesperado do servidor — contate o suporte se persistir
502Gateway inválidoO serviço upstream de análise está temporariamente indisponível — tente novamente após um curto intervalo

Tags e filtragem

Passe um objeto JSON no parâmetro tags para anexar metadados à sua análise:
{
  "customerId": "9999",
  "customerName": "Acme Corp",
  "documentId": "DOC-2024-001",
  "companyName": "DeepXL",
  "companyId": "COMP-001"
}
Filtre seu histórico de detecções por tags:
curl "https://api.deepxl.ai/v1/detection?tagFilter=customerId=9999" \
  -H "x-api-key: YOUR_API_KEY"
Recupere resultados de detecção paginados com ordenação e filtragem:
curl "https://api.deepxl.ai/v1/detection?limit=25&offset=0&sortBy=createdOn&direction=desc" \
  -H "x-api-key: YOUR_API_KEY"

Parâmetros de consulta

ParâmetroTipoDescrição
limitintegerNúmero de resultados por página (padrão: 25)
offsetintegerNúmero de resultados a pular
sortBystringCampo para ordenar (veja as opções abaixo)
directionstringasc ou desc
minLikelihoodfloatFiltro de probabilidade mínima (0–100)
maxLikelihoodfloatFiltro de probabilidade máxima (0–100)
fraudSeveritystringFiltrar por severidade: low, medium ou high
classificationstringFiltrar por classificação: verified, unverified ou rejected
tagFilterstringFiltrar por tag (formato: key=value)
minTimestampintegerTimestamp Unix mínimo
maxTimestampintegerTimestamp Unix máximo

Opções de ordenação

fraudDetectionId, fileName, fileSize, fileType, model, likelihood, createdOn Recupere resultados de detecção paginados com ordenação e filtragem:
curl "https://api.deepxl.ai/v1/detection?limit=25&offset=0&sortBy=createdOn&direction=desc" \
  -H "x-api-key: YOUR_API_KEY"

Parâmetros de consulta

ParâmetroTipoDescrição
limitintegerNúmero de resultados por página (padrão: 25)
offsetintegerNúmero de resultados a ignorar
sortBystringCampo usado para ordenar (veja as opções abaixo)
directionstringasc ou desc
minLikelihoodfloatFiltro de probabilidade mínima (0–100)
maxLikelihoodfloatFiltro de probabilidade máxima (0–100)
fraudSeveritystringFiltrar por severidade: low, medium ou high
classificationstringFiltrar por classificação: verified, unverified ou rejected
tagFilterstringFiltrar por tag (formato: key=value)
minTimestampintegerTimestamp Unix mínimo
maxTimestampintegerTimestamp Unix máximo

Opções de ordenação

fraudDetectionId, fileName, fileSize, fileType, model, likelihood, createdOn