Access Control
Access Control & API Keys
Manage API keys and role-based access control for WoPora integrations and security.
Access Control & API Keys
The Access Control section lets administrators manage API keys for machine-to-machine integrations and review permission settings. Navigate to Dashboard -> Access.
API Keys
API keys allow external systems (e.g., payroll providers, BI tools, custom scripts) to securely access WoPora data without using a user's credentials.
Creating an API Key
- Go to Dashboard -> Access -> API Keys
- Click New API Key
- Enter a name for the key (e.g., "Xero Integration", "BI Dashboard")
- Set the permissions scope (read, write, or admin per data type)
- Optionally set an expiry date
- Click Generate Key
- Copy the key immediately --- it is shown only once
Security: API keys are hashed after creation. WoPora cannot retrieve or display a key after the initial generation. Store keys in a secrets manager.
API Key Scopes
| Scope | Access |
|---|---|
timesheets:read | Read timesheet data |
timesheets:write | Create and update timesheets |
employees:read | Read employee records |
employees:write | Create and update employees |
payroll:read | Read pay run data |
payroll:write | Create and approve pay runs |
rosters:read | Read roster/schedule data |
rosters:write | Create and publish rosters |
Rotating an API Key
- Find the key in the API Keys list
- Click Rotate
- A new key value is generated --- copy and update it in your integration
- The old key is immediately revoked
Revoking an API Key
- Find the key in the list
- Click Revoke and confirm
Role Permissions Overview
| Feature | Admin | Manager | Supervisor | Accounts | Staff |
|---|---|---|---|---|---|
| View timesheets | All | Team | Team | All | Own |
| Approve timesheets | -�� | -�� | --- | --- | --- |
| Create pay runs | -�� | --- | --- | -�� | --- |
| Export payroll | -�� | --- | --- | -�� | --- |
| Manage employees | -�� | -�� | --- | --- | --- |
| Create rosters | -�� | -�� | --- | --- | --- |
| Approve leave | -�� | -�� | --- | --- | --- |
| Manage settings | -�� | --- | --- | --- | --- |
| View analytics | -�� | -�� | --- | -�� | --- |
| Manage API keys | -�� | --- | --- | --- | --- |
Security Best Practices
- Use the minimum scope --- Grant only the permissions each key needs
- Set expiry dates --- Rotate at least quarterly
- Audit regularly --- Deactivate any keys no longer in use
- Use separate keys per integration --- Never share one key across multiple systems