---
title: "Presupuesto previo (lectura pura, no gasta saldo)"
method: GET
path: "/v1/reports/quote"
tags: ["Reports"]
---

# Presupuesto previo (lectura pura, no gasta saldo)

`GET /v1/reports/quote`

## Request

- Base URL: `https://api.almanac.ar`
- URL: `https://api.almanac.ar/v1/reports/quote`
- Auth: HTTP bearer

Costo MÁXIMO de un POST /v1/reports subsiguiente para este CUIT — nunca puede ser mayor una vez corrido el Motor, sólo puede bajar a 0 (ver `costo_maximo_unidades`).

## Query parameters

- `cuit` string, required: CUIT/CUIL de 11 dígitos, sin guiones ni puntos.

## Response `200`

Presupuesto.

- ReportQuoteResponse
  - `cuit` string, required
  - `tipo_accion_estimado` 'nuevo' | 'actualizacion', required: Qué acción representa la consulta, en lenguaje de cliente — nunca 'créditos'. 'nuevo': primer informe de este CUIT para la cuenta (cuesta 200 unidades = costo_maximo_unidades). 'actualizacion': ya existía un informe previo (cuesta 50 unidades = costo_maximo_unidades, siempre — cambie o no cambie el contenido respecto del informe anterior).
  - `costo_maximo_unidades` integer, required: TECHO del costo real de un POST /v1/reports subsiguiente para este CUIT, en la misma unidad que `tipo_accion_estimado` ya nombra (1 'nuevo' = 200, 1 'actualizacion' = 50). El costo real nunca puede ser MAYOR a este número, y nunca baja por contenido idéntico al último informe (pedir una actualización siempre cuesta la actualización). Puede bajar en un caso borde de concurrencia — ver comentario de cabecera de este endpoint en el repo.
  - `saldo` object, required
    - `cupo_disponible_unidades` integer, required
    - `saldo_comprado_unidades` integer, required
    - `disponible_informes_nuevos` integer, required: Cuántos informes NUEVOS alcanza cupo_disponible_unidades + saldo_comprado_unidades juntos (floor).
    - `disponible_actualizaciones` integer, required: Cuántas actualizaciones alcanza cupo_disponible_unidades + saldo_comprado_unidades juntos (floor).
  - `alcanza` boolean, required: true si cupo_disponible + saldo_comprado ya cubre costo_maximo_unidades.
  - `mensaje` string, nullable, required

## Other responses

- `400`: cuit inválido o ausente.
- `401`: Sin sesión ni API key.
- `403`: Cuenta suspendida (requireAuth, cualquier ruta autenticada), o canal API no habilitado en el plan.
- `429`: rate_limited.

---

[API](https://skmtc.dev/almanac/apis/almanac-api.md) · [All operations](https://skmtc.dev/almanac/apis/almanac-api/llms.txt) · [OpenAPI document](https://skmtc.dev/almanac/apis/almanac-api/revisions/f1b8ffd54263?raw)
