A three-field form on the portal. The code calls it out explicitly: this is deliberately the only default gate, no password unless the customer voluntarily sets one, and the point is viewer visibility, who is looking and who the link was forwarded to, not access control. A successful sign-in mints an HMAC session token and a viewer id.
Also called: who is looking at my estimate · viewer capture · estimate sign-in
- 1Name, email and phone are all required before submit
- 2POST /api/client-portal/auth verifies the link, optional password, and rate limits by IP
- 3The server returns a signed token plus a viewerId and the full estimate snapshot
- 4Token, viewerId, name and email are cached in localStorage keyed by link id
A forwarded estimate is normal in this trade: the buyer sends it to a spouse, a lender or a business partner before deciding. Builders had no way to tell a second person had opened it, which is exactly the signal that a deal is moving. Whoever opens the link identifies themselves with a name, email and phone — visibility into who is reading, not a lock on the door.
- No signal about which humans viewed a quote
- Forwarded links produce anonymous traffic
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 →