---
title: "Detalhe de uma nota fiscal"
method: GET
path: "/v1/documents/{id}"
tags: ["Documentos"]
---

# Detalhe de uma nota fiscal

`GET /v1/documents/{id}`

## Request

- Base URL: `https://api.sudrel.com.br/api`
- URL: `https://api.sudrel.com.br/api/v1/documents/{id}`
- Auth: HTTP bearer

Inclui o XML original e a linha do tempo de eventos (cancelamento, substituição etc.).

## Path parameters

- `id` string, required

## Response `200`

OK

- NotaDetalhe
  - `id` string
  - `empresaId` string
  - `tipoDocumento` 'NFSE' | 'NFE' | 'CTE'
  - `chaveAcesso` string
  - `cnpjTomador` string
  - `papel` 'RECEBIDA' | 'EMITIDA' | 'FORA_DE_ESCOPO': RECEBIDA = a empresa é a tomadora do serviço; EMITIDA = a empresa é a prestadora. FORA_DE_ESCOPO existe no filtro, mas não aparece nas listas: é o documento em que a empresa não é nenhuma das duas partes, que também não conta na franquia.
  - `prestador` Prestador
    - `documento` string
    - `nome` string, nullable
  - `numero` string
  - `serie` string
  - `dataEmissao` string, date-time
  - `municipio` string, nullable
  - `descricaoServico` string, nullable
  - `municipioEmitente` string, nullable: NF-e: cidade/UF do emitente, lido do XML.
  - `trajeto` string, nullable: CT-e: origem → destino da prestação.
  - `produtos` object[], nullable: NF-e: itens da nota.
    - `descricao` string
    - `quantidade` string, nullable
    - `unidade` string, nullable
    - `valor` string, nullable
  - `descricaoCarga` string, nullable: CT-e: produto predominante da carga (ou a descrição do serviço no CT-e OS).
  - `valorServicos` string
  - `situacao` 'AUTORIZADA' | 'CANCELADA' | 'SUBSTITUIDA'
  - `nsu` string, nullable
  - `recebidaEm` string, date-time
  - `xmlOriginal` string
  - `eventos` Evento[]
    - `id` string
    - `tipo` string: Tipo do evento (cancelamento, substituição etc.) — string livre, o ADN pode introduzir tipos novos sem exigir mudança de contrato.
    - `sequencia` integer
    - `dataEvento` string, date-time
    - `recebidoEm` string, date-time
    - `nsu` string
    - `situacaoResultante` 'AUTORIZADA' | 'CANCELADA' | 'SUBSTITUIDA'
    - `xmlOriginal` string
  - `manifestacoes` Manifestacao[]
    - `id` string
    - `tipo` 'CIENCIA_OPERACAO' | 'CONFIRMACAO_OPERACAO' | 'DESCONHECIMENTO_OPERACAO' | 'OPERACAO_NAO_REALIZADA' | 'PRESTACAO_SERVICO_DESACORDO': NF-e usa as quatro primeiras; CT-e, `PRESTACAO_SERVICO_DESACORDO`.
    - `status` 'ENVIADA' | 'REJEITADA'
    - `protocolo` string, nullable
    - `motivoRejeicao` string, nullable
    - `criadaEm` string, date-time
    - `temXmlEvento` boolean: Se o XML do evento existe. O XML em si não vem nesta resposta.

## Other responses

- `401`: Chave de API ausente, inválida ou revogada.
- `403`: A chave de teste (`sdr_test_`) não faz esta operação: ela emite NFS-e e NF-e na homologação e lê empresas. Use uma chave de produção (`sdr_live_`).
- `404`: Recurso não encontrado nesta conta.
- `429`: 120 requisições por minuto por chave excedidas (janela fixa de 60 s, alinhada ao relógio). Sem cabeçalho `Retry-After`: espere a virada do minuto. Nas rotas de conta, empresas e documentos o corpo é este; nas de emissão, lote, webhooks e eventos é problem+json `limite_de_requisicoes`.

---

[API](https://skmtc.dev/sudrel/apis/api-publica-sudrel-nfs-e-nf-e-e-ct-e.md) · [All operations](https://skmtc.dev/sudrel/apis/api-publica-sudrel-nfs-e-nf-e-e-ct-e/llms.txt) · [OpenAPI document](https://skmtc.dev/sudrel/apis/api-publica-sudrel-nfs-e-nf-e-e-ct-e/revisions/efd7baba9e37?raw)
