Pular para conteúdo

Referência da API

A interface pública, agrupada pelas macro-seções do próprio código — cada seção é uma pasta com uma visão geral (index.md) e uma página por reader (Descrição + Exemplos).

Veja também: Uso · Exemplos

Macro-seções

Seção Import público Estado
Boletim Diário do Pregão (BDI) filings_b3.daily_bulletin 2 readers
Pesquisa por Pregão filings_b3.search_trading_session 1 reader
Plataformas (PUMA) filings_b3.platforms planejada
Índices filings_b3.indexes planejada
Dados de mercado filings_b3.market_data planejada
Clearing (garantias) filings_b3.clearing planejada

Cada reader é importável apenas pela sua seçãofrom filings_b3.daily_bulletin import …. A raiz filings_b3 exporta só __version__; o subpacote _internal é privado.

Mudança na 0.2.0

Até a 0.1.x cada reader era também reexportado de forma plana na raiz. Isso foi removido: com seis macro-seções e ~105 datasets previstos, a raiz viraria uma lista de mais de cem nomes, exatamente o que a organização por seção existe para evitar.

Fazendo esta seção crescer

Isto é um diretório, não uma página única, de propósito. Uma referência de API cresce a cada unidade publicada, então um único api.md vira a maior página do repositório; dividi-la depois é trivial, mas apodrece todos os links profundos publicados — e permanentemente, uma vez que a documentação versionada esteja no ar, porque /<version>/api/#anchor existe para sempre. O prêmio por começar como diretório é um arquivo extra e um nível de navegação, pago uma única vez.

A convenção concreta desta seção: uma pasta por macro-seção (daily_bulletin/, …), com um index.md de visão geral (o catálogo de readers + a prosa compartilhada) e uma página por reader (Descrição + Exemplos). Uma seção só nasce no disco com o seu primeiro reader.

Ao adicionar páginas:

  • Agrupe pela própria divisão de alto nível do código-base — nunca invente uma taxonomia paralela (por exemplo, uma página por módulo público, espelhando a própria divisão do pacote). Quem conhece o pacote consegue adivinhar a URL, e a documentação não pode divergir de uma estrutura que ela espelha.
  • A profundidade acompanha a quantidade, não o gosto. O eixo real escolhe as seções; só o volume decide se uma seção precisa de um segundo nível.
  • A prosa compartilhada por um grupo mora uma única vez na página daquele grupo, não repetida por item.
  • Registre toda nova página no nav: do mkdocs.yml no mesmo commit. O MkDocs constrói uma página não registrada mesmo assim — ela apenas some da navegação, que é como uma página some silenciosamente (e é o que o gate check_docs_sections.py existe para pegar).