Best for
- onboarding staff
- controlling who can view or edit different parts of the system
- deciding who can approve corrections and reviews
Current access model
AquaOps assigns permissions directly to each user — there is no separate “Roles” page or reusable role template to configure first. When you add or edit a user, you check off exactly the permissions they need from a grouped checklist (Organization, Locations, Pools, Users, Chemical Records, Maintenance Logs, Compliance, Forms, Form Submissions), plus which locations they can access. This is simpler to reason about for a small team, at the cost of having to re-check the same boxes for every user with a similar job — see Recommended permission sets below for a way to make that consistent.Users
Go to:Creating a user
ClickAdd user and provide:
- name
- whether they’re a CPO (certified pool operator)
- one or more permission keys, from the grouped checklist
- which locations they can access
Editing an existing user’s permissions
Open a user’s row actions and select Edit permissions to change their permission checklist or location access at any time — the same checklist used when the user was created.User status
Users can be active or inactive. Inactive users should not be able to continue normal use of the app.Permission keys
Every permission is amodule:action key. A user can hold any combination.
The org:manage wildcard
org:manage grants every permission below automatically — full access to organization settings, users, locations, pools, and every record type. Grant it sparingly; it’s the equivalent of an “admin” toggle.
Example permission keys
chemical_records:viewchemical_records:editchemical_records:createchemical_records:correct— approve or reject a correction to an already-saved chemical record; without it, staff can still request one, it just waits for reviewmaintenance_logs:viewmaintenance_logs:createmaintenance_logs:editmaintenance_logs:correct— approve or reject a correction to an already-saved maintenance logcompliance:viewcompliance:manageforms:view— see and author form templates (Settings > Forms) — separate from actually filling one outforms:createforms:editform_submissions:create— fill out and submit forms day to dayform_submissions:viewform_submissions:manage— review, approve, reject, or request changes on submitted formsform_submissions:correct— approve or reject a correction to a form submission that’s already been approved or rejectedlocations:create/:edit/:deletepools:view/:create/:edit/:deleteusers:view/:create/:edit/:deleteorg:manage— wildcard, full access
Recommended permission sets
There’s no built-in role template, so keep a short written reference for your organization (a spreadsheet, an internal wiki page, or just this section annotated with your own notes) describing the permission sets you actually use — for example:- Admin —
org:manage - Manager — view/create/edit/correct on chemical records and maintenance logs,
compliance:manage,form_submissions:manage - Operator — view/create on chemical records and maintenance logs
- Read-only — the
:viewkeys only
The admin user
There’s no protected “admin” role name in the current model — org:manage is just a permission key like any other. Make sure at least one active user always holds it, since it’s the only way to grant or revoke everyone else’s access.
Typical walkthrough
1
Decide your permission sets
Write down (outside the app) the two or three staff categories your organization actually needs and which permission keys each one gets.
2
Open Users
Open
Settings > Users.3
Add staff
Add each staff member, checking the permission keys and location access for their category.
4
Deliver credentials
Copy the one-time temporary password and deliver it securely.
5
Manage access
Use Edit permissions to adjust an existing user, and inactivate users when they should no longer have access.
Suggested screenshots
- users list
- add user dialog with the permission checklist
- edit permissions dialog on an existing user