Overview
Update user roles and permissions as your team's needs change. Woopra allows you to modify access levels quickly without removing and re-adding users.
Updating User Roles
Step-by-Step Process
Navigate to Team Settings
- Log into your Woopra account
- Go to Settings → Team
Find the User
- Locate the user in the team member list
- View their current role in the Role column
Change Role
- Click on the user's current role dropdown
- Select the new role from the list:
- Owner
- Admin
- Member
- Read-Only
- Changes take effect immediately
Verify Changes
- User's new role appears in the list
- User may need to refresh their browser to see new permissions
Role Changes
Upgrading Access
From Read-Only to Member:
- User can now create personal reports
- Can access more analytics features
- Still cannot manage team
From Member to Admin:
- Can now manage team members
- Can access all settings (except billing)
- Can create organization-wide reports
From Admin to Owner:
- Gets full billing access
- Can delete project
- Only one owner allowed per project
- Previous owner automatically downgraded to Admin
Downgrading Access
From Admin to Member:
- Loses team management capabilities
- Retains access to analytics and reports
- Personal reports remain intact
From Member to Read-Only:
- Can only view existing reports
- Cannot create new reports
- Existing personal reports become view-only
Common Update Scenarios
Temporary Elevated Access
When a user needs temporary admin access:
// Track temporary access grants (for audit trail)
woopra.track('temp_access_granted', {
user_email: 'user@example.com',
original_role: 'member',
new_role: 'admin',
reason: 'quarterly_reporting',
expires_at: 'YYYY-MM-DD',
granted_by: 'owner@example.com'
});
Process:
- Update user to Admin role
- Set calendar reminder for access expiration
- Downgrade back to original role when done
Role Change After Promotion
Employee promoted to manager:
- Update from Member to Admin
- Grant access to team management features
- Assign ownership of specific reports
- Update notification preferences
Contractor to Employee
Converting contractor access:
- Change from Read-Only to Member
- Update email to company email if needed
- Enable additional features
- Assign to relevant teams
Best Practices
Regular Access Reviews
Conduct quarterly reviews:
Review Checklist:
□ Verify each user still needs access
□ Check if roles match current responsibilities
□ Remove inactive users
□ Update roles for promoted/transferred employees
□ Document all changes
Change Management
Before updating access:
- Notify User: Inform them of upcoming changes
- Document Reason: Keep audit trail of why access changed
- Verify Impact: Check what reports/dashboards they own
- Update Gradually: Don't downgrade multiple admins at once
Communication
// Example: Notify user of role change
function notifyRoleChange(user, oldRole, newRole) {
sendEmail({
to: user.email,
subject: 'Your Woopra Access Has Been Updated',
body: `
Hi ${user.name},
Your Woopra access has been updated:
- Previous role: ${oldRole}
- New role: ${newRole}
${newRole === 'admin' ?
'You now have administrative access to manage team members and settings.' :
'Your access level has changed. Contact your Woopra administrator with questions.'
}
`
});
}
Permissions by Role
Owner Permissions
- ✓ View all analytics
- ✓ Create/edit reports
- ✓ Manage team members
- ✓ Access billing
- ✓ Manage integrations
- ✓ Delete project
- ✓ Change ownership
Admin Permissions
- ✓ View all analytics
- ✓ Create/edit reports
- ✓ Manage team members
- ✗ Access billing
- ✓ Manage integrations
- ✗ Delete project
- ✗ Change ownership
Member Permissions
- ✓ View all analytics
- ✓ Create personal reports
- ✗ Manage team members
- ✗ Access billing
- ✗ Manage integrations
- ✗ Delete project
Read-Only Permissions
- ✓ View shared reports
- ✗ Create reports
- ✗ Manage team
- ✗ Access billing
- ✗ Manage integrations
Troubleshooting
Changes Not Taking Effect
Solutions:
- Ask user to log out and log back in
- Clear browser cache
- Try incognito/private browsing mode
- Verify change was saved in Team Settings
User Still Has Old Permissions
Check:
- Correct user was updated (verify email)
- Change was actually saved
- User is in correct project
- No browser caching issues
Cannot Change Role
Possible Reasons:
- You don't have permission to manage users
- Trying to change owner role (requires transfer process)
- User has pending invitation (must accept first)
- Account has permission restrictions
Bulk Updates
For updating multiple users:
- Go to Settings → Team
- Select multiple users (if available)
- Choose Bulk Actions → Change Role
- Select new role
- Confirm changes
Note: Not all Woopra plans support bulk updates.
Audit Trail
Tracking Changes
Keep record of role changes:
// Log all permission changes
function logPermissionChange(change) {
const auditEntry = {
timestamp: Date.now(),
changed_by: change.admin_email,
user_affected: change.user_email,
old_role: change.old_role,
new_role: change.new_role,
reason: change.reason
};
// Save to your audit system
saveAuditLog(auditEntry);
// Track in Woopra
woopra.track('permission_updated', auditEntry);
}
Compliance
For compliance requirements:
- Document all changes: Who, what, when, why
- Maintain audit logs: Keep for required retention period
- Regular reviews: Schedule quarterly access reviews
- Approval process: Require approval for admin role grants
Automated Role Management
Integration with HR Systems
# Example: Sync roles with HR system
def sync_woopra_roles():
"""Update Woopra roles based on HR system"""
# Get current employees from HR system
employees = get_active_employees()
for employee in employees:
# Determine role based on department/title
role = determine_woopra_role(employee)
# Update in Woopra
update_woopra_user_role(
email=employee.email,
role=role
)
def determine_woopra_role(employee):
"""Determine appropriate Woopra role"""
if employee.title in ['CEO', 'VP']:
return 'admin'
elif employee.department in ['Analytics', 'Marketing']:
return 'member'
else:
return 'read-only'
Security Considerations
Least Privilege Principle
- Grant minimum access needed
- Start with Read-Only, upgrade as needed
- Regularly review and downgrade unused elevated access
- Limit number of Admins and Owners
Separation of Duties
- Don't give same person both analytics and billing access
- Rotate admin responsibilities
- Use different accounts for different roles