---
title: "Get trailing 12-month SLA history"
method: GET
path: "/v1/usage/sla"
tags: ["Usage & SLA"]
---

# Get trailing 12-month SLA history

`GET /v1/usage/sla`

## Request

- Base URL: `https://api.nashboard.ai`
- URL: `https://api.nashboard.ai/v1/usage/sla`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Required scope: `usage:read`. Returns per-month aggregates from enrich_sla_tracking (populated daily). failure_rate is derived at read time. The public uptime probe is GET /readyz (no auth).

## Headers

- `X-Nashboard-Version` '2026-06-13'

## Response `200`

Trailing 12-month SLA data.

- SlaResponse
  - `months` object[], required: Trailing 12 months of SLA data, newest first.
    - `month` string, required: Calendar month (YYYY-MM-DD, first day of month).
    - `total_requests` integer, required
    - `failed_requests` integer, required
    - `failure_rate` number, required: Derived: failed_requests / total_requests (0 when total is 0).
    - `p95_latency_ms` integer
    - `p99_latency_ms` integer
    - `sla_breaches` integer
    - `uptime_pct` number, required

## Other responses

- `400`: Bad request (invalid JSON, invalid ID, invalid cursor, etc.)
- `401`: Missing, malformed, or invalid API key.
- `403`: Insufficient scope or scope escalation attempt.
- `404`: Resource not found.
- `409`: Conflict (e.g. email already taken).
- `413`: Request body too large.
- `415`: Unsupported media type.
- `422`: Request body failed schema validation.
- `429`: Rate limited, quota exceeded, or DP budget exhausted.
- `500`: Internal server error.
- `502`: Upstream dependency error (e.g. receipt image storage unavailable — code storage_failure).

---

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