# GET /v1/account/usage

Unmetered by design. A valid credential always receives 200, including
when the account is already over its hard cap.

```bash
curl "https://api.statshawk.ai/v1/account/usage" -H "X-API-Key: sk_live_YOUR_KEY"
```

## Responses

- `200`: Current-period plan usage (unmetered; does not consume quota) (schema: [ApiResponseAccountUsage](/docs/reference/data-model.md))
- `401`: Missing or invalid API key (schema: [ErrorResponse](/docs/reference/data-model.md))
- `429`: Rate limit (`RATE_LIMIT_EXCEEDED`) or monthly quota (`QUOTA_EXCEEDED`). (schema: [ErrorResponse](/docs/reference/data-model.md))
- `500`: Account store unavailable or quota ledger read failed (schema: [ErrorResponse](/docs/reference/data-model.md))
- `501`: Capability not supported for this competition (`NOT_SUPPORTED`). (schema: [ErrorResponse](/docs/reference/data-model.md))
- `502`: Upstream data provider failed (`PROVIDER_ERROR`). (schema: [ErrorResponse](/docs/reference/data-model.md))
- `503`: Database connection pool unavailable (schema: [ErrorResponse](/docs/reference/data-model.md))

Every response carries `X-Request-Id` and, when metered, `X-RateLimit-Limit` / `X-RateLimit-Remaining` / `X-RateLimit-Reset`. Errors use `{"error": {"code", "message"}}`. See [Errors](/docs/getting-started/errors.md).

Full spec: [/openapi.json](/openapi.json) · MCP equivalent: connect to `https://mcp.statshawk.ai/mcp`.
