Skip to content

Access Control

Role matrix

Tenant roles

ActionSales RepManagerAdmin
View own leads
View all leads
Create leads
Edit leads✅ (own)
Delete leads
Move pipeline stage
Create tasks
Assign tasks to others
View all team activity
Manage automations
Configure pipeline stages
Invite team members
Manage billing
Configure integrations
Configure SMTP
Access analytics

Platform roles (developer portal)

ActionDeveloperDeveloper StaffDeveloper Admin
View platform client list
Manage tenant clients
View affiliate directory
Approve/reject affiliates
Create affiliates directly
View commission ledger
Approve/pay commissions
Manage platform settings

Tenant isolation

Each tenant organization’s data is completely isolated:

  • All PocketBase queries are filtered by the authenticated user’s client_id
  • No API route returns cross-tenant data
  • Developer portal users can view the client list but cannot access tenant CRM records

Admin controls

Inviting and removing team members

Admins can:

  • Invite users by email from Settings → Team
  • Set or change role assignments
  • Remove users from the organization (revokes access immediately)

Password policy

  • All users must set a password of at least 8 characters
  • Password reset is available via email for any user

Session visibility

Currently, admins cannot view active sessions of other users. Users can manage their own sessions by logging out.


Principle of least privilege

Follow least-privilege when assigning roles:

  • Give Sales Rep role to field sales team members
  • Give Manager role to team leads who need reporting access and automation management
  • Give Admin only to people responsible for billing, settings, and user management

Avoid giving everyone Admin access — restrict billing access to prevent accidental plan changes.