Skip to main content

The tiers

GET /plans/ returns the live tiers as the deployment holds them; treat that as authoritative if the table above and the dashboard ever disagree.

How limits are counted

Subscriptions belong to a user — one person holds at most one, and it is what they pay for. Limits are then enforced per workspace, and a workspace inherits the limits of the user who owns it. Three consequences worth knowing:
  • A member on the free tier who joins someone else’s Scale workspace works under Scale’s allowances inside that workspace.
  • max_workspaces is the one limit counted against the user, and it is what bounds how many times a paid tier’s allowances can be multiplied.
  • max_environments is counted within a project, not a workspace.
A subscription that is active or due still entitles its holder. One that has been cancelled or has fallen past_due drops back to free.
An account that has never subscribed has no subscription row at all, and resolves to built-in free defaults rather than to the Free plan row above. The two differ in three places: the defaults allow 3 projects and 3 environments rather than 1 of each, and do not include provider imports. Check GET /plans/{workspace_id}/subscription for what a given workspace actually gets.

Hitting a limit

Any call that would push a workspace past its allowance is refused with 402 Payment Required before it does any work, and the message names the plan you are on. The CLI surfaces it as a plan error pointing at Settings → Billing. The same status covers feature switches: creating a share link on the free tier, importing from a provider without the entitlement, or listing a secret’s versions without history all answer 402 rather than 403.

Checking usage

prints the plan and the seat and secret counters for the linked workspace, when the server supports it. The same thing over HTTP:
Returns the plan name, its limits and current usage, with null for anything unlimited.

Managing a subscription

All of it is available from Settings → Billing in the dashboard; the endpoints exist for automation. Plan creation and editing (POST, PATCH, DELETE on /plans/) is administrative and gated behind a separate operator token.