DataBolsa docs
Referência da APIDados de mercadoMacro

Observações de uma série (com acumulados opcionais)

Série temporal (data, valor) de uma fonte macro. `source`+`series_id` identificam a série; `accumulated=12m` acumula variações e só vale para séries mensais — e nem para todas elas: veja o parâmetro. Ex.: bcb_sgs/432 = Selic meta, fred/DGS10 = Treasury de 10 anos, world_bank/NY.GDP.MKTP.KD.ZG:CN = crescimento do PIB da China. Descubra os ids em listSeries. **Ordem CRESCENTE** — do mais antigo para o mais recente, declarado em `meta.order`. Atenção ao comparar com `listQuotes`, que devolve no sentido OPOSTO: quem calcula `linha[i+1] − linha[i]` para achar a maior queda acha a maior alta se supuser o sentido errado, sem erro nenhum. **Peça `latest=N`.** Sem ele a resposta é a série inteira desde a primeira observação publicada — 6.688 linhas na Selic diária.

GET
/v1/series/{source}/{series_id}
AuthorizationBearer <token>

In: header

Path Parameters

sourcestring

Fonte: bcb_sgs | fred | world_bank | benchmark.

Length1 <= length
series_idstring

ID da série na fonte. Em bcb_sgs: 432=Selic meta (%a.a.), 4389=CDI anualizado, 11=Selic diária, 433=IPCA mês, 13522=IPCA 12m, 1=USD/BRL, 189=IGP-M. Use listSeries para descobrir outras.

Length1 <= length

Query Parameters

from?string
Match^\d{4}-\d{2}-\d{2}$
to?string
Match^\d{4}-\d{2}-\d{2}$
accumulated?string

Transformação: none (default) ou 12m, o acumulado em janela móvel de doze meses.

COMO as doze observações se juntam depende do que o número é, e a rota decide pela régua declarada (dimension + period), devolvendo o método em meta.accumulation: variação percentual do mês COMPÕE (doze meses de IPCA dão 4,44% e não 4,36%), fluxo em moeda SOMA.

Responde 400 onde a conta não tem sentido, em vez de servir um número plausível: série que JÁ é acumulada de doze meses (a 13522 daria ~53%), taxa anualizada, nível/estoque, ou série sem régua declarada. Com a transformação, meta.unit, meta.period e meta.expected_range passam a descrever o valor servido — não a série crua.

Default"none"
Value in"none" | "12m"
latest?integer

As N observações MAIS RECENTES. Use quase sempre. Sem isto a resposta é a série INTEIRA: bcb_sgs/11 devolve 6.688 linhas e ~91 KB numa chamada só, e quem tem teto de passos paga isso em orçamento de contexto. Compõe com from/to — as N últimas DENTRO da janela. Com accumulated=12m a folga de lookback é buscada por dentro, então latest=12 devolve doze pontos acumulados de verdade, não um e onze nulos.

Range1 <= value <= 20000

Response Body

curl -X GET "https://api.databolsa.com/v1/series/string/string?from=string&to=string&accumulated=none&latest=1"
{
  "data": [
    {
      "date": "string",
      "value": 0
    }
  ],
  "meta": {
    "next_cursor": "string",
    "count": 0,
    "total": 0,
    "subject": {
      "property1": "string",
      "property2": "string"
    },
    "source": "string",
    "series_id": "string",
    "name": "string",
    "label": "string",
    "unit": "string",
    "frequency": "string",
    "dimension": "string",
    "scale": "string",
    "period": "string",
    "seasonal_adjustment": "string",
    "expected_range": {
      "min": 0,
      "max": 0
    },
    "prior_note": "string",
    "served_by": "string",
    "first_date": "string",
    "last_date": "string",
    "order": "asc",
    "truncated": true,
    "out_of_prior_count": 0,
    "accumulation": "string"
  }
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "details": {
    "property1": null,
    "property2": null
  }
}