---
title: "Audit Invoices"
method: POST
path: "/api/v1/audit/invoices"
tags: ["auditoria"]
---

# Audit Invoices

`POST /api/v1/audit/invoices`

## Request

- Base URL: `https://app.estudoseletricos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.estudoseletricos.com/api/v1/audit/invoices`
- Auth: none declared

## Request body

- AuditoriaIn
  - `arquivos` ArquivoIn[]
    - `nome` string, required
    - `conteudo_b64` string, required: o arquivo em base64
  - `demonstracao` boolean: a série de DEMONSTRAÇÃO do núcleo (dado fictício)
  - `parametros` object: as MESMAS chaves da página da plataforma; o que não vier, a regra declara como não executável nomeando o campo
  - `grupos` string[], nullable: None = catálogo inteiro; o filtrado sai como pulado
  - `base_aneel` boolean: consultar a base tarifária da ANEEL (e o Fio B) para esta série. Sem ela, T01, T04 e G01–G03 se declaram não executáveis: a rede vive na casca, e a consulta usa cache local de 24 h
  - `uc` string, nullable: a unidade consumidora auditada quando os documentos trazem mais de uma (o relatório agrupado traz dezenas). A série é de UMA UC: sem a escolha, a resposta é 422 com as UCs em `ucs`

## Response `200`

Successful Response

- AuditoriaOut: O resultado da auditoria da SÉRIE (nunca da fatura isolada).
  - `competencias` string[]
  - `origens` string[]
  - `recusados` object[]: documentos que NÃO entraram na série, com o motivo — some daqui seria auditar menos do que o usuário pensa
  - `achados` AchadoOut[]
    - `regra` string, required
    - `severidade` string, required
    - `titulo` string, required
    - `descricao` string, required
    - `competencias` string[]
    - `fundamento` string[]
    - `acao` string
    - `confianca` string
    - `impacto_rs` number, nullable
    - `impacto_kwh` number, nullable
    - `motivo_sem_valor` string
  - `resumo` object
  - `cobertura` CoberturaOut: COBERTURA é parte do resultado: regra pulada declara o motivo, porque 'não verificado' nunca pode ser lido como 'conforme'.
    - `executadas` string[]
    - `puladas` object
    - `total` integer
    - `pct` number
  - `consolidado` ConsolidadoOut: Os subtotais SEGREGADOS: administrativo e judicial não se somam (são pedidos diferentes, em foros diferentes), e o crédito em kWh é denominação alternativa, não parcela.
    - `administrativo_rs` number
    - `judicial_rs` number
    - `credito_kwh` number
    - `administrativo_por_confianca` object
    - `favoraveis_rs` number
    - `quantificados` integer
    - `nao_quantificados` integer
    - `sem_valor` array[]
      - string[]
  - `requerimentos` RequerimentoOut[]
    - `via` string, required
    - `destinatario` string, required
    - `texto` string, required
    - `regras` string[]
    - `competencias` string[]
    - `fundamentos` string[]
    - `valor_rs` number, nullable
    - `valor_kwh` number, nullable
    - `confianca` string
    - `achados` integer
  - `sem_providencia` integer
  - `avisos` string[]: avisos da AUDITORIA, sobre a série inteira: troca de código da UC, série que não veio toda do XML (achados como 'provável'), base da ANEEL
  - `avisos_ingestao` AvisoIngestaoOut[]: o que os LEITORES dos documentos declararam não ter lido, por competência e na ordem da série — linha que ficou fora, tributo sem conta, soma que não fecha com o total. Linha que não entrou na fatura sai aqui, como documento que não entrou na série sai em `recusados`
    - `competencia` string, required: a competência (AAAA-MM) da fatura cujo leitor declarou o aviso
    - `aviso` string, required: o texto do leitor, sem edição
  - `demonstracao` boolean
  - `uc` string: a UC auditada ('' quando o documento não a traz)
  - `ucs` UcOut[]: todas as UCs dos documentos — a série auditada é uma delas
    - `uc` string, required
    - `rotulo` string
    - `faturas` integer
    - `competencias` string[]
  - `demandas` DemandasOut: Os meses de demanda da série auditada, prontos para a demanda contratada. Uma lista não mistura demanda com e sem perdas: `com_perdas` diz qual é, e com perdas o fator de perdas da CALC-22 (D10) é 'nenhum'.
    - `meses` DemandaMesOut[]
      - `competencia` string, required
      - `demanda_kw` object
      - `maxima` number, required
      - `origem` string, required: 'medido' (registrador da própria competência) ou 'historico_impresso' (tabela impressa numa fatura)
      - `documento` string: competência da fatura que trouxe o mês
    - `com_perdas` boolean
    - `contratada_kw` number, nullable: a contratada, quando é a mesma em toda a série
    - `avisos` string[]
  - `base_aneel` string: procedência da base tarifária nesta auditoria: '' (não consultada), 'rede', 'cache', 'cache_velho' ou o motivo de não ter sido obtida
  - `norma` string
  - `tier` string

## Other responses

- `422`: documento ilegível ou série vazia
- `429`: teto de chamadas

---

[API](https://skmtc.dev/estudoseletricos/apis/arc-flash-platform-api.md) · [All operations](https://skmtc.dev/estudoseletricos/apis/arc-flash-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/estudoseletricos/apis/arc-flash-platform-api/revisions/5877d717cb1b?raw)
