Open the account as one of its users

Support can open a customer's account as a specific named person, so a reported problem is reproduced from exactly that person's view.

What it is

A split button in the account list: clicking the label opens the account neutrally, clicking the chevron reveals a picker of the account's users. Choosing one opens the account with view-as parameters that the permission layer reads on landing and applies as an impersonation, then strips from the address bar.

Also called: see what this user sees · open as member · reproduce a user's problem

See it
Open the account as one of its users
Won
41%
Avg cycle
20d
Pipeline
$621k
JanSep
The chevron popover listing account members with roles, anchored to a table row. src/components/platform/OpenAsButton.tsx. Sample data — no customer information appears here.
How it works
  1. 1Members are fetched lazily on first chevron click, so the picker costs no traffic unless used.
  2. 2The chosen person's role and crew ride in the URL because session storage is host-scoped and can't be written into the tenant from the console.
  3. 3The permission layer reads the parameters on landing, sets the view-as state, and removes them from the URL so a refresh or shared link doesn't carry it forward.
  4. 4The picker is rendered into the page body with fixed positioning so a table's overflow or the viewport edge can't clip it, and it flips above when there isn't room below.
Why we built it

The component documents the bridge and why it is needed: this 'bridges across hosts (apex /platform → tenant subdomain) because sessionStorage is host-scoped — couldn't write impersonation state into the tenant from the admin page directly.' The positioning is a fix, not a flourish: the popover is portalled 'so the table's overflow / the viewport edge can never clip it (it sits on a bottom row otherwise).' Stripping the parameters after landing is what stops an impersonation link being forwarded or bookmarked by accident.

The problem
  • A permission-specific bug is invisible from an admin's view.
  • Impersonation state couldn't cross from the console host to the tenant host.
  • The member picker was being clipped by the table it sat in.
Sound familiar?
What you get
Support sees exactly what the person reporting the problem sees.
No need to borrow anyone's login.
The impersonation doesn't survive a refresh or a forwarded link.

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 →