---
title: "Get caller's current quota state"
method: GET
path: "/v1/quota"
tags: ["billing"]
---

# Get caller's current quota state

`GET /v1/quota`

## Request

- Base URL: `https://data.thinair.co`
- URL: `https://data.thinair.co/v1/quota`
- Auth: API key in header `x-api-key`

Returns the caller's plan, daily usage, remaining queries, monthly limit, and upgrade options. **Free to call** — never debits quota and never returns 429 (a quota-exhausted user must still be able to discover their state).

## Response `200`

Caller's quota snapshot.

- QuotaResponse: Caller's current quota state — plan, daily usage, remaining queries, monthly limit, and upgrade options. Mirrors geo-mcp's /v1/quota response shape so cross-product clients can share a parser. Plan-name divergence: data-mcp uses discover|build|architect|enterprise (vs geo's free|starter|pro|enterprise|admin) — treat `plan` as an opaque string.
  - `schema_version` 'v1', required
  - `mcp` object, required
    - `plan` string, required
    - `used_today` integer, required
    - `daily_limit` union, required
      - integer
      - 'unlimited'
    - `remaining_today` union, required
      - integer
      - 'unlimited'
    - `monthly_limit` union, required
      - integer
      - 'unlimited'
    - `price_per_month` string, required
    - `suggested_upgrade` string, nullable, required
    - `upgrade_url` string, nullable, required
    - `reset_at` string, required

## Other responses

- `401`: Authentication required or failed.

---

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