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

# Contractual Windows by CUIT

> Contractual CBU/CVU change windows (w_1d through w_180d) for an Argentina CUIT — billable per request when priced.

## Overview

Returns **contractual lookback windows** with CBU/CVU deltas, days with changes, variance, and comparison vs previous window. **One billable request** per successful call when priced.

## Endpoint

```
GET https://api.gu1.ai/api/integration-services/ar_gueno_holder_intelligence_service/cuits/{cuit}/windows
```

## Path parameters

<ParamField path="cuit" type="string" required>
  Argentina CUIT/CUIL — **11 digits**, no dashes.
</ParamField>

## Query parameters

<ParamField query="window" type="string">
  Optional. Return a **single** window key instead of the full map. Allowed values: `w_1d`, `w_3d`, `w_7d`, `w_14d`, `w_21d`, `w_30d`, `w_90d`, `w_180d`.
</ParamField>

<ParamField query="date" type="string">
  Optional. Reference calendar date (`YYYY-MM-DD`) for the window end. Defaults to latest corpus date when omitted.
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  `true` on HTTP 200.
</ResponseField>

<ResponseField name="data.integrationCode" type="string">
  `ar_gueno_holder_intelligence_service`
</ResponseField>

<ResponseField name="data.cuit" type="string">
  Requested CUIT.
</ResponseField>

<ResponseField name="data.date" type="string | null">
  Reference date for the window set (`YYYY-MM-DD`).
</ResponseField>

<ResponseField name="data.window" type="string">
  Present when `?window=` filter was applied — echoes the requested key.
</ResponseField>

<ResponseField name="data.windows" type="object">
  Map of window keys to metrics objects (or `null` when data is unavailable for that window).

  Each window object:

  * `days` (number) — window length in days
  * `cbuDelta` (number | null) — net CBU change in the window
  * `cvuDelta` (number | null) — net CVU change in the window
  * `daysWithChanges` (number | null) — days with any delta
  * `variance` (number | null) — variance of daily deltas
  * `diffVsPrev` (number | null) — comparison vs previous contractual window
</ResponseField>

## Errors

| HTTP | `error.code`           | When                         |
| ---- | ---------------------- | ---------------------------- |
| 400  | `INVALID_WINDOW`       | Unknown `window` query value |
| 400  | `INVALID_DATE`         | Malformed `date` query       |
| 404  | `CUIT_NOT_FOUND`       | CUIT not in corpus           |
| 402  | `INSUFFICIENT_BALANCE` | Credits or pack exhausted    |
| 503  | `SERVICE_UNAVAILABLE`  | Holder backend unavailable   |
| 500  | `INTERNAL_ERROR`       | Unexpected error             |

## Example — all windows

```bash theme={null}
curl -s \
  -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.gu1.ai/api/integration-services/ar_gueno_holder_intelligence_service/cuits/20384648798/windows"
```

## Example — single window

```bash theme={null}
curl -s \
  -H "Authorization: Bearer YOUR_API_KEY" \
  "https://api.gu1.ai/api/integration-services/ar_gueno_holder_intelligence_service/cuits/20384648798/windows?window=w_7d&date=2026-06-24"
```

```json theme={null}
{
  "success": true,
  "data": {
    "integrationCode": "ar_gueno_holder_intelligence_service",
    "cuit": "20384648798",
    "date": "2026-06-24",
    "window": "w_7d",
    "windows": {
      "w_7d": {
        "days": 7,
        "cbuDelta": 1,
        "cvuDelta": 0,
        "daysWithChanges": 2,
        "variance": 0.25,
        "diffVsPrev": -1
      }
    }
  }
}
```

## Rules mapping

Rule paths use snake\_case under `services.holder_intelligence.windows.{key}.*`, for example:

* `services.holder_intelligence.windows.w_7d.cbu_delta`
* `services.holder_intelligence.windows.w_7d.days_with_changes`

See [Rules conditions](/en/api-reference/rules/conditions).
