Documentação para agentes e LLMs
A documentação da NFe.io é publicada em formato amigável para agentes de IA, pipelines de RAG (Retrieval-Augmented Generation) e modelos de contexto longo. Esta página descreve os recursos disponíveis para que sua ferramenta consuma o conteúdo de forma eficiente, mantendo as respostas atualizadas e fundamentadas em fontes oficiais.
Início rápido
Três caminhos, do mais simples ao mais completo:
- Página única em Markdown — anexe
/index.mda qualquer URL pra obter a versão Markdown puro daquela página. - Catálogo de uma área — leia o
llms.txtdo produto que interessa (ex.:/docs/integracoes/llms.txt) para um índice das páginas e use os links pra puxar cadaindex.md. - Documentação completa de uma área — leia o
llms-full.txtdaquele produto pra obter todas as páginas concatenadas em um único arquivo.
Markdown por página
Cada página de documentação possui um arquivo Markdown companheiro publicado no mesmo diretório, ao lado do index.html, seguindo a convenção do padrão append /index.md:
https://nfe.io/docs/documentacao/conceitos/introducao/ ← HTML
https://nfe.io/docs/documentacao/conceitos/introducao/index.md ← Markdown
No topo de cada página de documentação você encontra dois botões para a mesma URL:
- Ver como Markdown — abre o arquivo em uma nova aba (link HTML puro, funciona com JavaScript desabilitado).
- Copiar como Markdown — copia o conteúdo bruto para a área de transferência.
Negociação por header Accept: text/markdown
Requisite qualquer página com o header Accept: text/markdown e o servidor responde com a versão Markdown ao invés do HTML — sem precisar trocar a URL:
curl "https://nfe.io/docs/documentacao/conceitos/introducao/" \
--header "Accept: text/markdown"
Útil quando o agente já tem a URL canônica e quer evitar o index.md extra na string.
Conteúdo limpo
O arquivo .md é gerado a partir da fonte com as seguintes transformações:
- Componentes MDX (
<Tabs>,<TabItem>,<details>,<summary>, iframes do YouTube) convertidos para Markdown legível. - Imports MDX e componentes React personalizados removidos.
- Caminhos de imagem reescritos para URLs absolutas, permitindo renderização em qualquer cliente.
- Frontmatter YAML com metadados úteis (ver abaixo).
Frontmatter de cada arquivo Markdown
Cada index.md começa com um cabeçalho YAML mínimo com os campos:
---
title: "Título da página"
description: "Resumo curto extraído do front-matter da fonte."
source_url: https://nfe.io/docs/caminho-canonico/
last_updated: 2026-04-22
---
| Campo | Descrição |
|---|---|
title | Título exibido na página HTML. |
description | Resumo da página (mesmo usado em meta tags da versão HTML). |
source_url | URL canônica da versão HTML — útil para o agente citar a fonte original. |
last_updated | Data em ISO 8601 (YYYY-MM-DD). Vem do last_update.date do front-matter da fonte ou do mtime do arquivo. |
Manifestos llms.txt
A documentação segue o padrão llmstxt.org, com endpoints em dois níveis (site-wide e por produto).
Endpoints site-wide
| Endpoint | Descrição |
|---|---|
/docs/llms.txt | Índice dos produtos disponíveis, agrupados por categoria, com link para o llms.txt de cada um. |
/docs/llms-full.txt | Arquivo único com o conteúdo concatenado da documentação institucional. APIs REST e Prefeituras integradas ficam de fora — cada produto tem o seu próprio llms-full.txt. |
Endpoints por produto
Cada produto publica seus próprios manifestos sob o prefixo da URL pública:
| Produto | Manifesto |
|---|---|
| Documentação da plataforma | /docs/documentacao/llms.txt |
| Integrações com plataformas | /docs/integracoes/llms.txt |
| SDKs e Bibliotecas | /docs/desenvolvedores/bibliotecas/llms.txt |
| Legislação tributária | /docs/legislacao/llms.txt |
| Release notes | /docs/release-notes/llms.txt |
| Dúvidas frequentes | /docs/duvidas-frequentes/llms.txt |
Cada um desses caminhos também tem um companheiro llms-full.txt com o conteúdo completo daquela área.
Especificações OpenAPI
As APIs REST da NFe.io são documentadas em arquivos OpenAPI (YAML ou JSON) publicados em /docs/api/. Use estes endpoints quando seu agente precisar gerar chamadas para a API sem consultar a documentação HTML manualmente:
| API | Arquivo |
|---|---|
| Nota Fiscal de Serviço (NFS-e) v1 | /docs/api/nf-servico-v1.yaml |
| Nota Fiscal de Produto (NF-e) v2 | /docs/api/nf-produto-v2.yaml |
| Nota Fiscal de Consumidor (NFC-e) v2 | /docs/api/nf-consumidor-v2.yaml |
| NFS-e RTC (Reforma Tributária) | /docs/api/service-invoice-rtc-v1.yaml |
| NF-e/NFC-e RTC (Reforma Tributária) | /docs/api/product-invoice-rtc-v1.yaml |
| Cálculo de Impostos v1 | /docs/api/calculo-impostos-v1.yaml |
| Cadastro de Produtos v1 | /docs/api/product-register-pt-br-v1.yaml |
| Contribuintes v2 | /docs/api/contribuintes-v2.json |
| Consulta de NF-e v2 | /docs/api/consulta-nf.yaml |
| Consulta de CNPJ v1 | /docs/api/consulta-cnpj.yaml |
| Consulta de CPF v1 | /docs/api/cpf-api.yaml |
| Consulta de Endereços v1 | /docs/api/consulta-endereco.yaml |
| Consulta de CT-e v2 | /docs/api/consulta-cte-v2.yaml |
| Consulta NF-e Distribuição v1 | /docs/api/consulta-nfe-distribuicao-v1.yaml |
| Consulta DFe Distribuição v2 | /docs/api/consulta-dfe-distribuicao-v2.yaml |
Áreas excluídas do fluxo Markdown
Duas áreas da documentação não participam do fluxo Markdown — só HTML — porque sua versão .md não agregaria valor real para um agente:
- APIs REST (
/docs/desenvolvedores/rest-api/...) — as páginas são geradas a partir das especificações OpenAPI e usam intensivamente componentes MDX (Tabs de exemplos, Schemas, Responses) que não traduzem bem para Markdown puro. Use diretamente os arquivos OpenAPI listados acima para consumir essas APIs de forma programática. - Prefeituras integradas (
/docs/prefeituras-integradas/...) — conteúdo sem informação técnica acionável para um agente.
Essas páginas continuam acessíveis em HTML normalmente e podem ser citadas como fonte, mas não aparecem nos manifestos llms.txt nem têm index.md gerado.
Boas práticas para agentes
- Use o
source_urldo frontmatter ao citar fontes — é a URL canônica e estável da página HTML. - Cheque o
last_updatedantes de confiar em conteúdo sobre legislação ou reforma tributária: a regulamentação muda com frequência. - Para fluxos longos, prefira o
llms-full.txtdo produto específico ao invés do site-wide — economiza tokens e mantém o foco no que importa. - Para chamadas de API, prefira as especificações OpenAPI em
/docs/api/ao invés de raspar páginas HTML; assim você obtém schemas e exemplos estruturados.