Demonstração de Resultados (DREs)
Descubra se uma empresa está dando lucro ou prejuízo — e de onde vem esse resultado. A demonstração de resultados (DRE) é como um filme do desempenho financeiro de uma companhia ao longo de um período, mostrando receitas, custos, despesas e o lucro final.
O que é a Demonstração de Resultados?
Enquanto o balanço patrimonial mostra a situação da empresa em uma data específica, a DRE mostra o que aconteceu ao longo de um período — quanto a empresa vendeu, quanto gastou e quanto sobrou.
A leitura segue uma lógica "de cima para baixo":
| Etapa | O que representa |
|---|---|
| Receita | Quanto a empresa faturou com suas atividades. |
| (-) Custos | Quanto custou produzir ou entregar o que foi vendido. |
| = Lucro Bruto | O que sobrou após os custos diretos. |
| (-) Despesas Operacionais | Gastos com vendas, administração e outros. |
| = EBIT | Resultado antes do resultado financeiro e tributos. |
| (±) Resultado Financeiro | Receitas e despesas com juros, câmbio e investimentos. |
| (-) Impostos | Imposto de renda e contribuição social. |
| = Lucro Líquido | O resultado final — quanto a empresa ganhou (ou perdeu) no período. |
Períodos e TTM
Você pode consultar dados anuais ou trimestrais. No modo anual, a API calcula automaticamente o TTM (Trailing Twelve Months) — uma visão acumulada dos últimos 12 meses, combinando os trimestres mais recentes. Isso permite acompanhar o desempenho atualizado da empresa sem precisar esperar a publicação do relatório anual.
period | Ordem dos statements |
|---|---|
annual (padrão) | TTM (se disponível), seguido dos exercícios anuais em ordem decrescente. |
quarterly | Trimestres em ordem decrescente, sem TTM. |
fiscal_period será TTM para identificá-lo.Requisição
Informe o ticker no formato {fonte}:{símbolo}.
GEThttps://api.hgbrasil.com/v2/finance/income-statements?tickers=B3:PETR4&key=suachave
curl -X GET "https://api.hgbrasil.com/v2/finance/income-statements?tickers=B3%3APETR4&key=suachave"
const url = new URL("/v2/finance/income-statements", "https://api.hgbrasil.com")
url.searchParams.set("tickers", "B3:PETR4")
url.searchParams.set("key", "suachave")
const response = await fetch(url.href)
const data = await response.json()
$url = 'https://api.hgbrasil.com/v2/finance/income-statements';
$queryString = http_build_query([
'tickers' => 'B3:PETR4',
'key' => 'suachave'
]);
$response = file_get_contents($url . '?' . $queryString);
$data = json_decode($response, true);
import requests
url = 'https://api.hgbrasil.com/v2/finance/income-statements'
params = {
'tickers': 'B3:PETR4',
'key': 'suachave'
}
response = requests.get(url, params=params)
data = response.json()
require 'net/http'
require 'uri'
require 'json'
uri = URI('https://api.hgbrasil.com/v2/finance/income-statements')
uri.query = URI.encode_www_form({
tickers: 'B3:PETR4',
key: 'suachave'
})
response = Net::HTTP.get(uri)
data = JSON.parse(response, symbolize_names: true)
import java.net.URI;
import java.net.http.*;
var url = "https://api.hgbrasil.com/v2/finance/income-statements?tickers=B3%3APETR4&key=suachave";
var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder()
.uri(URI.create(url))
.GET()
.build();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
var data = response.body();
using System.Net.Http;
using System.Text.Json;
using System.Web;
var client = new HttpClient();
var baseUrl = "https://api.hgbrasil.com/v2/finance/income-statements";
var queryParams = HttpUtility.ParseQueryString(string.Empty);
queryParams["tickers"] = "B3:PETR4";
queryParams["key"] = "suachave";
var url = $"{baseUrl}?{queryParams}";
var response = await client.GetStringAsync(url);
var data = JsonSerializer.Deserialize<dynamic>(response);
Ativos Disponíveis
Consulte os ativos disponíveis para uso na API. Use o campo abaixo para buscar por nome ou símbolo.
Parâmetros
{fonte}:{símbolo}. Para múltiplos ativos, separe por vírgula: B3:PETR4,B3:VALE3.annual (padrão) ou quarterly.yyyy-mm-dd).yyyy-mm-dd).0 para dados do dia atual.Resposta
Campos
Os dados de cada ativo retornam no array results:
Ativo
| Campo | Tipo | Descrição | Exemplo |
|---|---|---|---|
ticker | string | Ticker completo no formato {fonte}:{símbolo}. | B3:PETR4 |
unit | string | Unidade dos valores (currency para moeda). | currency |
currency | string | Moeda dos valores. | BRL |
symbol | string | Código de negociação do ativo. | PETR4 |
name | string | Nome simplificado da empresa. | Petrobras |
full_name | string | Razão social completa da empresa. | Petróleo Brasileiro S.A. |
Período
Cada item do array statements representa a DRE de um período:
| Campo | Tipo | Descrição | Exemplo |
|---|---|---|---|
period_type | string | Tipo do período: annual ou quarterly. | annual |
start_date | string | Data de início do período. | 2024-01-01 |
end_date | string | Data de encerramento do período. | 2024-12-31 |
fiscal_year | number | Ano fiscal. | 2024 |
fiscal_period | string | Período fiscal: FY, TTM, ou Q1–Q4. | FY |
Demonstração de Resultados
Os campos seguem a ordem natural da DRE, da receita ao lucro líquido:
| Campo | Tipo | Descrição |
|---|---|---|
revenue | number | Receita líquida de vendas de bens e/ou serviços. |
cost_of_sales | number | Custo dos bens e/ou serviços vendidos. |
gross_profit | number | Lucro bruto (revenue + cost_of_sales). |
operating_expenses | number | Total das despesas e receitas operacionais. |
selling_expenses | number | Despesas com vendas e distribuição. |
general_and_administrative_expenses | number | Despesas gerais e administrativas. |
impairment_losses | number | Perdas por desvalorização de ativos (impairment). |
other_operating_income | number | Outras receitas operacionais. |
other_operating_expenses | number | Outras despesas operacionais. |
equity_method_result | number | Resultado de equivalência patrimonial (investimentos em coligadas e controladas). |
ebit | number | Resultado antes do resultado financeiro e dos tributos (EBIT). |
financial_result | number | Resultado financeiro líquido. |
financial_income | number | Receitas financeiras (juros, rendimentos de aplicações). |
financial_expenses | number | Despesas financeiras (juros de empréstimos, variação cambial). |
income_before_taxes | number | Resultado antes dos tributos sobre o lucro. |
income_tax | number | Imposto de renda e contribuição social sobre o lucro. |
current_tax | number | Impostos correntes (devidos no período). |
deferred_tax | number | Impostos diferidos (diferenças temporárias). |
income_from_continuing_operations | number | Resultado líquido das operações continuadas. |
income_from_discontinued_operations | number | Resultado líquido de operações descontinuadas. |
net_income | number | Lucro (ou prejuízo) líquido consolidado do período. |
net_income_to_shareholders | number | Lucro atribuído aos acionistas controladores. |
net_income_to_non_controlling | number | Lucro atribuído aos acionistas não controladores. |
basic_eps | number | Lucro básico por ação ordinária (em R$/ação). |
diluted_eps | number | Lucro diluído por ação ordinária (em R$/ação). |
basic_eps e diluted_eps referem-se sempre às ações ordinárias (ON) e são expressos em Reais por ação. O EPS diluído considera o efeito potencial de opções de ações e instrumentos conversíveis.null indicam que a empresa não reportou o item no período consultado — por exemplo, nem todas as empresas possuem operações descontinuadas.Fonte
O objeto source contém informações sobre a origem dos dados:
| Campo | Tipo | Descrição | Exemplo |
|---|---|---|---|
source.symbol | string | Código da fonte. | CVM |
source.name | string | Nome da fonte. | Comissão de Valores Mobiliários |
source.full_name | string | Nome completo da fonte. | Comissão de Valores Mobiliários |
source.url | string | Site oficial. | https://www.cvm.gov.br/ |
source.location.timezone | string | Fuso horário. | America/Sao_Paulo |