All endpoints require auth.

Account

Get account

GET /v1/account → profile, notifications, billing contact, plan, payment method, API keys, invoices, and the current invoice.

Update account

PATCH /v1/account
profile
object | null
notifications
object | null
billing_contact
object | null
payment_method
object | null
plan
object | null
Returns the updated account view. 400 on an invalid plan.

API keys

Create

POST /v1/account/api-keys
name
string
default:"\"default\""
Returns the new key (key_id, …).

Revoke

DELETE /v1/account/api-keys/{key_id}{ "revoked": "<key_id>" }. 404 if not found.

Billing checkout

Start checkout

POST /v1/billing/checkout
plan
string
required
Must be a known plan.
Free plans activate immediately: { "free": true, "plan", "account" }. Paid plans return { "free": false, "plan", "amount_cents", "amount", "currency", "checkout_id", ... } including a payment-provider session. 400 on an unknown plan.

Confirm checkout

POST /v1/billing/checkout/confirm
checkout_id
string
required
payment_id
string | null
e.g. razorpay_payment_id.
signature
string | null
e.g. razorpay_signature.
Returns { "paid": bool, "status", "account" } with a new invoice record on success.

Usage, billing & analytics (dashboard)

EndpointReturns
GET /v1/usage{ "org_id", "counters": {…} }
GET /v1/billing{ "org_id", "total", "currency", "line_items": [...] }
GET /v1/analyticsmemory size, cache efficiency, top domains

Authentication

How to get a key and authenticate billing calls.