Domain Auto-Join

Domain auto-join lets anyone signing up with an email at your work domain (e.g. @yourpractice.com) get added to your agency automatically. No invite needed. Great for fast-hiring practices where the admin doesn’t want to send a one-off invite every time a new clinician joins.

How to enable it

  1. Open /admin/agencySettings tab.
  2. In the Domain Auto-Join card, type a domain into the input (e.g. yourpractice.com) and click Add Domain.
  3. The domain appears as a chip with an × button. Add more domains by repeating.

You can add up to 50 domains. The input is tolerant — you can paste any of these and it normalizes:

When the webhook suggested a domain at checkout

When you completed the Agency Plan checkout, you may have entered a “Work email domain.” That value (plus your own email’s domain) is stored as a suggestion but not auto-enabled.

After you sign your BAA, the Settings tab shows a small prompt: “We noticed your team uses @yourdomain.com — enable auto-join?” with a one-click Enable Auto-Join button. Click it to enable, or Not Now to dismiss.

This deliberate two-step exists so domain auto-join is never active before the org BAA is signed.

Multi-domain support — for staffing agencies

If your agency works with multiple client organizations or uses multiple email domains (e.g. a home health staffing company placing clinicians at three different facilities), add each domain separately. Anyone signing up with any of the listed domains is auto-joined to your agency.

Example for a staffing agency:

What happens when someone signs up via auto-join

  1. They go to /signup and enter their name + email
  2. The backend detects their domain matches your auto-join list
  3. They’re shown your agency’s plan picker (Base or Voice availability, no price — your agency pays)
  4. They pick a seat type
  5. A Pending login entry is created in your members list (no seat consumed yet)
  6. On their first verified sign-in, the entry flips to Active and they start consuming a seat
    • If you’re at capacity AND Auto-Add Seats is OFF, they’re marked Blocked instead. You can re-invite them after adding a seat.
    • If you’re at capacity AND Auto-Add Seats is ON, a seat is added automatically and they activate. More on Auto-Add Seats →

Security — what stops spoofing?

The protection is the email verification gate. Anyone could type a @yourpractice.com address at signup, but they can never actually log in without having access to that email account (login requires a 4-digit code sent to the address). So a fake claim sits at Pending login forever and never consumes a seat or grants access.

Domain auto-join with email verification is the standard mechanism Slack, Notion, and Linear use for “auto-add by email domain” workflows.

Blocked domains

Common consumer email providers can’t be used as auto-join domains, to prevent abuse:

gmail.com, yahoo.com, outlook.com, hotmail.com, live.com, icloud.com, me.com, mac.com, aol.com, proton.me, protonmail.com, msn.com, comcast.net, verizon.net, att.net, sbcglobal.net, cox.net, earthlink.net, mail.com, gmx.com, yandex.com, zoho.com, fastmail.com, qq.com, 163.com, 126.com.

If you try to add one of these, the dashboard shows a clear error.

Removing a domain

Click the × on any chip in your auto-join list. The domain is removed immediately. Future sign-ups with that domain go through the normal individual flow.

Clinicians who already joined your agency via that domain stay — they’ve already activated and consumed a seat. Removing the domain only affects future sign-ups.

When to use auto-join vs. explicit invites

You can use both at the same time. Explicit invites take priority over auto-join — if someone has a pending invite token AND their email also matches an auto-join domain, the invite flow wins.

← Back to Help Center

Still need help?

Email us at [email protected] — we respond personally within 24 hours.