Plans
Mainnet credits are shared by the Activity API, the Assets API, RPC and webhook
deliveries. Testnet requests and Testnet webhook deliveries cost no credits and
are never billed; over the daily cap they return
429 until 00:00 UTC (see
Testnet is free). Rate limits, page sizes,
credits per route and webhook endpoint caps are in
usage and limits.
The plan catalog
The catalog is public and needs no key. Treat it as the source of truth for prices and limits:Response (trimmed to one plan)
Buy plans from the Mainnet catalog (
https://api.lumeus.dev/v1/plans), where
catalog_state is self_serve. The Testnet host shows the same plans with
catalog_state: legacy_reference and subscribable: false, for reference
only. The subscription you buy applies to both networks.
Upgrade
- In the dashboard, open Usage & billing and choose Compare plans.
- Pick Starter, Growth or Scale and complete Stripe Checkout.
- The plan changes when Stripe confirms the payment, usually within seconds. The return to the dashboard alone is not proof of payment.
POST /billing/checkout with {"plan":"starter"} (full API key or
signed-in session) returns the Checkout url. A new checkout expires the
workspace’s previous unpaid Checkout session, so only the newest one can be
paid. A new subscription starts a fresh monthly allowance, even when you upgrade
on the day your Free period started.
A workspace has one subscription. A further checkout returns 409 with
code: conflict and a reason:
subscription_exists: the workspace already has a subscription;subscription_pending: a paid checkout is still being set up. Refresh in a minute.
portal_url opens the billing portal.
Change or cancel a plan
POST /billing/subscription with {"plan":"growth"} moves the current
subscription to another plan, up or down. Stripe invoices the prorated
difference immediately; if an upgrade’s payment fails, the plan does not change.
The plan changes when Stripe confirms the update. Never start a second checkout
to change plans. Cancel in the billing portal (Manage subscription, or
POST /billing/portal); cancelling returns the workspace to Free.
Upgrading keeps your keys, logs and data. For webhooks on paid plans, see
webhook plans.
Overage and invoices
Paid plans keep working past their included credits. Each further 1,000 credits costs $0.01 and appears on the next monthly invoice. Free never bills: at 250,000 credits, Mainnet requests return402 payment_required until the
period resets, while Testnet keeps working up to its daily cap. Check usage at
any time with GET /v1/usage or on Usage & billing, which shows today’s
Testnet requests next to your Mainnet credits:
GET /v1/usage (trimmed)
When a request is charged
Testnet requests are never charged; they only count toward the daily Testnet cap. Each Mainnet request reserves its maximum cost before the read and settles the actual cost before the response is sent:- A successful response is charged once, when the server completes it. A client that disconnects early is still charged.
- Errors cost 0 credits: 4xx responses, upstream failures, and every 5xx,
including
503“billing temporarily unavailable”. The one exception is an unknown transaction hash:404 not_foundon/transactions/{hash}or/transactions/{hash}/activitycosts 1 credit, because the lookup searched the full history. - On Free (hard cap), a request never costs more than the credits reserved for
it, so a large response can cost less than the formula. Near the cap a
request is refused with
402when its reservation does not fit, even if its actual cost would. Assets reads reserve by the requestedlimit, Activity pages reserve the plan’s maximum page, and RPC calls reserve their method’s maximum response. monthly_requestsin/v1/usagecounts settled requests on both networks, Testnet included at 0 credits. Refunded requests are not counted.
Payment problems
If a renewal payment fails, the subscription is past due and Stripe retries the payment. The workspace keeps its plan limits for 7 days; after that it uses Free limits until the payment succeeds. If Stripe gives up, or you cancel, the workspace returns to Free limits. Keys, logs and data are kept. CheckGET /billing/status for the payment state.
Prepaid offers and retired routes
Prepaid offers and retired routes
POST /billing/purchases buys versioned prepaid offers that Lumeus arranges
with a workspace; it is not part of self-serve billing. For prepaid accounts the
renewal grace period is 72 hours, and only existing funds can be used during
it. POST /billing/topup is retired and returns 409.