---
title: "Current plan and quota state"
method: GET
path: "/v1/usage"
tags: ["Account"]
---

# Current plan and quota state

`GET /v1/usage`

## Request

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

The key's plan, this month's renders and today's renders, so you never need a 402 to learn where you stand. The monthly counter is per **workspace** (shared across all of that workspace's keys) and resets on the calendar month (UTC), independent of subscription renewal anniversaries. The daily counter is per **key** (the key making this request) and resets at midnight UTC. Hitting the daily cap surfaces as `429 rate_limit_exceeded` on renders. Keyless renders are not counted anywhere.

## Response `200`

Usage summary.

- object
  - `plan` 'free' | 'pro', required
  - `renders` object, required
    - `used` integer, required: Renders used this month, workspace-wide.
    - `quota` integer, required
    - `resetsAt` string, date-time, required
    - `today` object, required
      - `used` integer, required: Renders used today by this key.
      - `cap` integer, required

## Other responses

- `401`: Missing or invalid API key.
- `500`: Unexpected server error. Safe to retry with backoff.

---

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