A username and encrypted password stored on the account row, resolved per request with a short cache. All estimator traffic — project lists, estimates, job data, pricing, colours, doors and windows, starting models, outputs — flows through a single proxy route that authenticates, injects the token and forwards. Accounts without credentials get an empty but structurally valid response on reads and an explicit 503 on writes.
Also called: SmartBuild login · post frame estimating software · connect my estimator
- 1Admin enters username and password in Settings → Integrations; the password is encrypted at the boundary.
- 2The proxy resolves credentials for the caller's account (environment variables remain a bootstrap path for the original single-tenant account).
- 3A login token is fetched and cached per credential for 23 hours.
- 4The upstream call is made with the token; the body is passed through regardless of status because the estimator returns useful JSON on some non-2xx codes.
- 5Unconnected accounts read as empty rather than erroring.
The proxy header states the multi-tenant rule and its failure mode: 'Per-org scoped — each tenant uses their own SmartBuild username/password... Tenants without SmartBuild credentials get an empty response on reads and a 503 on writes — never another tenant's data.' The credentials resolver documents why the Settings UI is the source of truth: it 'lets the platform owner manage creds without a Vercel redeploy.'
- Estimator credentials were environment-level and single-tenant.
- An unconnected account produced errors instead of an empty state.
- Rotating a password required a redeploy.
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →