Organizations Are Here β PulseWatch Works as a Team Now
So today we're shipping organizations. Every account now belongs to at least one, your existing data has been moved into place automatically, and there's a new tab in Settings where you can create workspaces, switch between them, and manage who is in them.
One Account, Many Workspaces
Sign in and you land in your own personal workspace β named after you, created the moment you log in. No setup wizard, no migration prompt, no "import your project" step. If your account predates this release, a backfill already did the work while the update went out: your monitors, status pages, incidents and maintenance windows now belong to your personal organization.
Want more than one? Settings β Organizations has a create form. A name is enough β we generate the slug, make you the owner, and drop the new org straight into your switcher. You can hop between workspaces any time, and the active one is remembered on your account.
Personal workspace
Every account gets one automatically. Existing accounts were backfilled β nothing to click, nothing to confirm.
Create organizations
Give it a name, get a workspace. You're the owner from the first second, with a unique slug behind it.
Switch workspaces
All your organizations in one list with your role next to each. One click and your active org changes.
Member list
Username, email, role and join date for everyone in the active organization β visible at a glance.
Roles That Actually Mean Something
Membership isn't a decorative label. Owners and admins run the org: they can add people by email and remove them, and the backend enforces it regardless of what the UI shows. Members belong to the workspace and see it in their list, without membership controls. And you cannot remove yourself β which saves everyone the awkward "wait, who owns this now?" conversation.
Owner
The person who created the org. Full control over it, including who else gets in.
Admin
Trusted to manage membership: add people by email, remove them, set roles.
Member
Part of the workspace with full visibility into it, but no membership controls.
A Paper Trail Instead of a Vibe
Every team tool eventually runs into the same question: "who changed that, and when?" So Settings has a second new tab β Audit. It lists recent events with who did it, what they did, the detail, the IP it came from, and when, newest first. Empty org? Empty state, no fake rows.
Events are written after the change actually succeeds β authentication, CRUD, role changes, billing, account deletion β so the log reflects what happened rather than what was attempted. No more guessing whether that config change went through.
Under the Hood
The schema work is deliberately boring, which is exactly how we like it: two new tables (organization and org_member), an org_id column on monitors, status pages, incidents and maintenance, and one remembered active-org column on the user. All of it applied through the same migration path as everything else in PulseWatch.
Idempotent backfill
Run it once or ten times, same result: personal org, owner membership, active org set, resources tagged.
Fail-open
If org provisioning ever hiccups, sign-in keeps working. Org setup can never lock you out of your own account.
Provisioned at sign-in
Clerk sign-in creates or reuses the personal org before you ever reach the dashboard.
Tested in CI
The same smoke suite that guards plans, webhooks and views now covers org data and the settings UI.
Full List β Everything That Shipped
The complete list for this release:
- New Organizations data layer β organization and org_member tables with unique memberships.
- New Personal workspace for every account, created automatically on sign-in.
- New Backfill for existing accounts β personal org, owner membership, active org and resource tagging, idempotently.
- New Create and switch organizations from Settings β Organizations.
- New Add members by email with owner, admin and member roles β enforced on the backend.
-
Improvement
org_idcolumns on monitors, status pages, incidents and maintenance, ready for org-scoped views. - New Settings β Audit β recent events with user, action, detail, IP and timestamp.
- Improvement Fail-open provisioning: org setup can never break sign-in.
Live in Your Settings
Organizations and the audit trail are live on production now β refresh Settings and you'll find both tabs waiting, with your personal workspace already populated. No update required on your end; it all shipped server-side.
Sharing the load is the whole point of a monitoring tool: one team, one place to look, and a log that says who did what. This is the foundation, and it's in your hands today.
β The PulseWatch Team
π¬ Comments
Questions, corrections or thoughts on this post? Join the thread below.