---
title: "Get My Plan"
method: GET
path: "/v1/me/plan"
---

# Get My Plan

`GET /v1/me/plan`

## Request

- Base URL: `https://api.quantradin.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.quantradin.com/v1/me/plan`
- Auth: none declared

This member's plan + the ROOM it gives them.

`plan` is what is STORED (billing truth — a founding member sees they are
on free and keeps their founder discount later); `effective_plan` + `caps`
are what applies right now. UNLIMITED renders as null. `never_capped`
lists the things no plan can ever take away — the UI should show it
wherever a cap is mentioned, so "upgrade" never reads as "buy honesty".
Also reports live USAGE against the two counted caps so the UI can show
headroom without a second call.

ONE QUERY, NO CACHE (2026-08-03). This asks five questions about one
member — stored plan, is-this-the-demo-tenant, runs, desks, bots — and it
used to ask them one at a time, each borrowing its own pooled connection
and opening its own transaction. Against Neon that is five network round
trips on a page every signed-in member loads; at 50 concurrent readers
the pool ran out and everybody queued (measured p50 4.5s). It is now ONE
statement. The counters stay LIVE — a member who just spent a run must
see it spent on the very next read, so caching usage is off the table;
the fix is fewer round trips, not staler numbers. If the combined read
fails we fall back to the old per-question path, which keeps each
counter's own fail-soft None instead of reporting a confident zero.

## Headers

- `x-vega-key` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/quantradin/apis/vega-api.md) · [All operations](https://skmtc.dev/quantradin/apis/vega-api/llms.txt) · [OpenAPI document](https://skmtc.dev/quantradin/apis/vega-api/revisions/47add154ef38?raw)
