There is no free plan. Three paid tiers, cumulative. Each includes everything below it.
| Plan | Price | Adds |
|---|---|---|
| Basic | $24/mo | 12 device types, unlimited PDF export, TCC charts, paper-form scanning |
| Premium | $89/mo | Pre-Job Analyzer, coordination studies, cloud draft sync |
| Unlimited | $199/mo | Equipment Database, Lead Scanner, AI contract summaries |
Charts and reports are uncapped on every paid plan. The gate is which endpoints exist for you, not how many times you may call them. A $7 top-up is available for occasional use beyond a plan's included allowance.
Endpoint gates#
| Endpoints | Requires | Refusal code |
|---|---|---|
/db/* | Unlimited | database_locked |
/contracts/*, /leads | Unlimited | contracts_locked |
| Pre-Job Analyzer, coordination | Premium | premium_required |
| Generation endpoints | any paid plan in good standing | allowance_exhausted, payment_past_due |
All four are 403, and all four carry a structured body rather than a string, so a client can branch on code without matching English.
{
"detail": {
"code": "database_locked",
"message": "The Power Automation Database is available on the Unlimited plan ($199/mo).",
"upgrade": true
}
}code, render message
message is written for a person and will change wording without notice. code is the contract. The upgrade flag, where present, is a hint that the situation is resolved by changing plan rather than by waiting or retrying.
Reading current usage#
Rather than discovering a limit by hitting it, read the current position first.