Neste texto, iremos mostrar como podemos retirar os dados dos demonstrativos contábeis de entes federativos do Brasil pelo Sistema de Informações Contábeis e Fiscais do Setor Público Brasileiro (SICONFI) via API no R.
Primeiramente, é necessário estar a par dos parâmetros que devem ser colocados como entradas para obter os dados dos diversos tipos de demonstrativos. O site http://apidatalake.tesouro.gov.br/docs/siconfi/ fornece detalhadamente quais parâmetros devem ser fornecidos para cada tipo de demonstrativos, bem como a url base para realizar a requisição do API.
Aqui iremos trabalhar como exemplo a Declaração de Contas Anuais (DCA) Anexo I-D do município de Varginha - Minas Gerais, no qual nos fornecerá as Despesas Orçamentárias por Natureza.
Para o DCA, há 3 parâmetros que devem ser inseridos: an_exercicio (Ano de exercício do demonstrativo); no_anexo (Qual anexo do relatório deseja obter) e id_ente (O código IBGE do ente em questão). Sendo an_exercicio e id_ente obrigatórios para esse demonstrativo em questão.
É fundamental a utilização dos pacotes a seguir.
library(httr) library(jsonlite) library(magrittr) library(tibble)
Em seguida vamos realizar a chamada da API criando uma URL.
# URL da DCA de Varginha no ano de 2020 url_dca <- paste("https://apidatalake.tesouro.gov.br/ords/siconfi/tt/dca?", # URL base para a chamada "an_exercicio=", 2020, "&", # Insere o parâmetro de Ano do exercício "no_anexo", "DCA-Anexo+I-D","&", # Insere o parâmetro do Anexo que se deseja obter "id_ente=", "3170701", sep = "") # Insere o parâmetro do Ente de acordo com o código IBGE do mesmo
Após isso, devemos realizar a requisição da API usando a função GET do pacote httr, bem como realizar a extração do conteúdo com as funções content e fromJSON dos pacotes httr e jsonlite, respectivamente.
api_dca <- GET(url_dca) # A chamada irá nos retornar os dados requisitados. Agora só precisamos extrair o conteúdo que nos interessa json_dca <- api_dca %>% content(as = "text", encoding = "UTF-8") %>% fromJSON(flatten = FALSE) # E após isso transforma-los em um tibble dca_tb <- as.tibble(json_dca[["items"]])
Desta forma podemos obter os dados do DCA Anexo I-D do município de Varginha. O método pode ser replicado para outros anexos e demonstrativos, bem como para qualquer outro Ente do Brasil.
_________________
(*) Gostou? Conheça nosso Curso de Análise de Conjuntura usando o R.