> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cucu.bo/llms.txt
> Use this file to discover all available pages before exploring further.

# Histórico

> Lo que el BCB publicó para cada fecha, con su procedencia: `?fecha=` y rangos.

<Warning>Uso justo: 120 solicitudes/hora por IP. El pasado casi no cambia: guarda lo que consultes (las respuestas históricas se pueden cachear hasta un día). Insistir tras un `429` se bloquea (`403`). [Política](/bcb/uso-justo)</Warning>

El histórico es lo que el BCB publicó **para cada fecha**, guardado sin modificar y con su procedencia. Si el BCB corrige un valor, queda como una versión nueva (`errata`), no se pisa. Lo que no pasa las validaciones de la API (rangos, `Bs = TCO ÷ M.E.` en monedas, picos aislados) no se publica.

## Un día: `?fecha=` en cada indicador

| Endpoint | Parámetro |
| - | - |
| `/api/v1/tc/oficial` · `/tc/ufv` · `/tc/oro` · `/tc/sdr` · `/tc/sofr` · `/tc/monedas` | `?fecha=AAAA-MM-DD` |
| `/api/v1/tc/inflacion` · `/tc/oma` · `/tc/tre` | `?fecha=AAAA-MM` (son mensuales) |

La respuesta tiene la misma forma que la del día, más `historico`:

| Campo | Descripción |
| - | - |
| `fecha_consultada` | La fecha que pediste. Un sábado, domingo o feriado sin tabla responde el último valor publicado antes (su `fecha` es la del dato) |
| `fuentes` | Cuántas fuentes del BCB coincidieron en ese valor |
| `version` · `errata` | Versión del dato; `errata: true` si el BCB corrigió un valor anterior |
| `fuente` | De dónde salió: `bcb_ods` (tabla de cotizaciones del BCB de esa fecha), `bcb_panel` (panel de estadísticas del BCB, mensual), `api_bcb` (lectura en vivo de esta API), `api_observado` / `api_servido` (lo que esta API ya había leído antes de existir el histórico) |
| `tabla_bcb` | Número de tabla del BCB, cuando sale de su tabla de cotizaciones |
| `granularidad` | `diaria` o `mensual` (un valor mensual sólo responde a su fecha exacta) |

Sin dato para esa fecha: `404`. Fecha futura o mal escrita: `400`. `/api/v1/tc` y `/tc/usd` no tienen histórico: con `?fecha=` responden `400`.

```json Ejemplo real: GET /api/v1/tc/oficial?fecha=2026-10-04 (domingo: rige el TCO del sábado 3) theme={"system"}
{
  "tc_oficial": {
    "regimen": "flexible",
    "valor": 12.0,
    "base": 12.0,
    "compra": 12.0,
    "venta": 12.0,
    "moneda": "USD/BOB",
    "fecha": "2026-10-03",
    "vigencia_desde": "2026-10-03",
    "nota": "TCO flexible (RD BCB 142/2026): compra = venta.",
    "fuente": "Banco Central de Bolivia (bcb.gob.bo)",
    "historico": {
      "fecha_consultada": "2026-10-04",
      "fuentes": 1,
      "version": 1,
      "errata": false,
      "fuente": "api_observado",
      "tabla_bcb": null,
      "granularidad": "diaria"
    }
  },
  "fuente": "Banco Central de Bolivia (bcb.gob.bo)",
  "disclaimer": "API independiente, no afiliada ni avalada por el Banco Central de Bolivia. Datos tomados de cifras públicas del BCB (bcb.gob.bo), con fines informativos; no es el registro oficial. Sin garantía; uso bajo su responsabilidad. Histórico: lo publicado por el BCB para cada fecha, con su procedencia; lo que no pasó las invariantes de la API no se publica."
}
```

## Un rango: `/api/v1/historico/{serie}`

`?desde=AAAA-MM-DD&hasta=AAAA-MM-DD` (por defecto, `hasta` = hoy) o `?fecha=`. Tope: 366 días por consulta (120 meses en las series mensuales). Las monedas llevan `&codigo=EUR`.

| Serie | Unidad |
| - | - |
| `tco` | Bs/USD. Desde el 29-jun-2026, el TCO del régimen flexible (compra = venta); antes, la cotización oficial de **compra** del BCB |
| `ufv` | Bs/UFV |
| `oro_usd_otf` · `plata_usd_otf` | USD por onza troy fina |
| `deg_usd` | USD por DEG |
| `sofr_pct` | % |
| `moneda_bs` · `moneda_me` | Bs por unidad · unidades por USD (con `codigo`) |
| `inflacion_ipc` · `inflacion_mensual_pct` · `inflacion_acumulada_pct` · `inflacion_anual_pct` | Índice y % (mensual) |
| `inflacion_nucleo_mensual_pct` · `inflacion_nucleo_acumulada_pct` · `inflacion_nucleo_anual_pct` | % (mensual) |
| `oma_reporto_pct` (con `codigo` = plazo, p. ej. `7D`) · `oma_subasta_273d_pct` · `oma_credito_ral_pct` | % (mensual) |
| `tre_pct` (con `codigo` = `MN`, `ME`, `MVDOL`, `MN_UFV`) | % (mensual) |

<RequestExample>
  ```bash cURL theme={"system"}
  curl "https://apibcb.cucu.bo/api/v1/historico/tco?desde=2026-09-28&hasta=2026-10-07"
  ```

  ```javascript JavaScript theme={"system"}
  const url = 'https://apibcb.cucu.bo/api/v1/historico/moneda_bs?codigo=EUR&desde=2026-01-01&hasta=2026-06-30';
  const { puntos } = await fetch(url).then(r => r.json());
  ```

  ```python Python theme={"system"}
  import requests
  ufv = requests.get('https://apibcb.cucu.bo/api/v1/tc/ufv', params={'fecha': '2026-10-04'}).json()['ufv']
  ```
</RequestExample>

<ResponseExample>
  ```json 200 (recortado a 3 puntos) theme={"system"}
  {
    "serie": "tco",
    "codigo": null,
    "unidad": "Bs/USD",
    "descripcion": "Tipo de cambio oficial del BCB. Desde 2026-06-29 (régimen flexible) es el TCO único (compra = venta); antes, la cotización oficial de COMPRA del BCB (columna oficial de su tabla de cotizaciones; la venta era Bs 0,10 más).",
    "desde": "2026-09-28",
    "hasta": "2026-10-07",
    "puntos": [
      {
        "fecha": "2026-09-29",
        "valor": 12.02,
        "granularidad": "diaria",
        "version": 1,
        "errata": false,
        "fuentes": 1,
        "fuente": "api_observado",
        "tabla_bcb": null
      },
      {
        "fecha": "2026-09-30",
        "valor": 12.02,
        "granularidad": "diaria",
        "version": 1,
        "errata": false,
        "fuentes": 1,
        "fuente": "api_observado",
        "tabla_bcb": null
      },
      {
        "fecha": "2026-10-01",
        "valor": 12.0,
        "granularidad": "diaria",
        "version": 1,
        "errata": false,
        "fuentes": 1,
        "fuente": "api_observado",
        "tabla_bcb": null
      }
    ],
    "truncado": false,
    "fuente": "Banco Central de Bolivia (bcb.gob.bo)",
    "disclaimer": "API independiente, no afiliada ni avalada por el Banco Central de Bolivia. Datos tomados de cifras públicas del BCB (bcb.gob.bo), con fines informativos; no es el registro oficial. Sin garantía; uso bajo su responsabilidad. Histórico: lo publicado por el BCB para cada fecha, con su procedencia; lo que no pasó las invariantes de la API no se publica."
  }
  ```
</ResponseExample>

## Cobertura: `/api/v1/historico`

Desde qué fecha hay datos de cada serie, cuántas fechas, erratas y rechazados. CUCU reconstruye el pasado leyendo de madrugada las tablas del BCB, con pausas para no cargar su sitio: **la cobertura crece día a día**. Consúltala antes de pedir fechas viejas.

```json Ejemplo real (recortado a 2 series) theme={"system"}
{
  "series": [
    {
      "serie": "moneda_bs",
      "unidad": "Bs/unidad",
      "descripcion": "Bolivianos por unidad de moneda extranjera (código ISO).",
      "granularidad": "diaria",
      "desde": "2026-10-06",
      "hasta": "2026-10-07",
      "fechas": 2,
      "codigos": 22,
      "erratas": 0,
      "rechazados": 0
    },
    {
      "serie": "tco",
      "unidad": "Bs/USD",
      "descripcion": "Tipo de cambio oficial del BCB. Desde 2026-06-29 (régimen flexible) es el TCO único (compra = venta); antes, la cotización oficial de COMPRA del BCB (columna oficial de su tabla de cotizaciones; la venta era Bs 0,10 más).",
      "granularidad": "diaria",
      "desde": "2026-09-26",
      "hasta": "2026-10-07",
      "fechas": 8,
      "codigos": 0,
      "erratas": 0,
      "rechazados": 0
    }
  ],
  "max_dias_por_consulta": 366,
  "max_meses_por_consulta": 120,
  "fuente": "Banco Central de Bolivia (bcb.gob.bo)",
  "disclaimer": "API independiente, no afiliada ni avalada por el Banco Central de Bolivia. Datos tomados de cifras públicas del BCB (bcb.gob.bo), con fines informativos; no es el registro oficial. Sin garantía; uso bajo su responsabilidad. Histórico: lo publicado por el BCB para cada fecha, con su procedencia; lo que no pasó las invariantes de la API no se publica."
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.