@@ -47,8 +47,11 @@ que possui os seguintes métodos.
4747- :py:meth: `bcb.odata.ODataQuery.collect `
4848- :py:meth: `bcb.odata.ODataQuery.show `
4949
50- Aplicação - Expectativas
51- ------------------------
50+ Aplicações
51+ ----------
52+
53+ Expectativas
54+ ^^^^^^^^^^^^
5255
5356Vamos ver como isso tudo funciona utilizando a API de expectativas.
5457
@@ -59,7 +62,7 @@ Vamos ver como isso tudo funciona utilizando a API de expectativas.
5962 em.describe()
6063
6164 ``EntitySets ``
62- ^^^^^^^^^^^^^^
65+ """"""""""""""
6366
6467Vemos que na API de expectativas tem uma listagem de ``EntitySets ``.
6568``EntitySets `` são *endpoints * que retornam um conjunto de dados toda vez que
@@ -73,7 +76,7 @@ Inspecionando o *endpoint* ``ExpectativaMercadoMensais``
7376
7477
7578 ``EntityType ``
76- ^^^^^^^^^^^^^^
79+ """"""""""""""
7780
7881Os dados retornados por um ``EntitySet `` tem um tipo que é o seu ``EntityType ``.
7982Para o *endpoint * ``ExpectativaMercadoMensais `` o tipo retornado é
@@ -149,8 +152,8 @@ um conjunto de colunas.
149152 .limit(10 )
150153 .collect())
151154
152- Aplicação - Moedas
153- ------------------
155+ Moedas
156+ ^^^^^^
154157
155158Uma outra aplicação é com a API de Moedas que implementa a especificação OData.
156159Utilizando a classe :py:class: `bcb.PTAX ` temos:
@@ -163,7 +166,7 @@ Utilizando a classe :py:class:`bcb.PTAX` temos:
163166
164167
165168 ``FunctionImports ``
166- ^^^^^^^^^^^^^^^^^^^
169+ """""""""""""""""""
167170
168171Note que essa API tem um ``EntitySet `` e seis ``FunctionImports ``.
169172A diferença entre eles é que os ``FunctionImports `` são funções
@@ -201,6 +204,34 @@ Podemos filtrar apenas pelos dados de abertura.
201204 .collect())
202205
203206
207+ Classe ODataAPI
208+ ^^^^^^^^^^^^^^^
209+
210+ .. currentmodule :: bcb
211+
212+ .. autoclass :: ODataAPI
213+ :inherited-members:
214+
215+ O portal de Dados Abertos to Banco Central apresenta diversas APIs OData, são
216+ dezenas de APIs disponíveis.
217+ A URL com metadados de cada API pode ser obtida no portal.
218+ A classe ``ODataAPI `` permite acessar qualquer API Odata de posse da sua URL.
219+
220+ Por exemplo, a API de estatísticas de operações registradas no Selic tem a seguinte URL::
221+
222+ https://olinda.bcb.gov.br/olinda/servico/selic_operacoes/versao/v1/odata/
223+
224+ que pode ser obtida no portal de dados abertos no `link <https://dadosabertos.bcb.gov.br/dataset/estatisticas-selic-operacoes >`_.
225+
226+ Essa API pode ser diretamente acessada através da classe ``ODataAPI ``.
227+
228+ .. ipython :: python
229+
230+ from bcb import ODataAPI
231+ url = " https://olinda.bcb.gov.br/olinda/servico/selic_operacoes/versao/v1/odata/"
232+ service = ODataAPI(url)
233+ service.describe()
234+
204235 Conclusão
205236---------
206237
0 commit comments