Overview
Retrieves a list of all user roles available in your account, including default roles (Manager, Admin, Viewer) and any custom roles you’ve created. Each role includes its permissions and access levels.Purpose
Role Management
- View Available Roles: See all roles in your account
- Understand Permissions: Review what each role can do
- Plan User Access: Choose appropriate roles when adding users
- Custom Role Reference: Reference custom roles you’ve created
Default Roles
- Manager (ID: 1): Can create, edit, and manage QR codes
- Admin (ID: 2): Full access including user management
- Viewer (ID: 3): Read-only access to QR codes and analytics
Response Structure
The response returns an array of access level objects, each containing:| Field | Type | Description |
|---|---|---|
id | integer | Unique role identifier |
name | string | Role name (e.g., “Manager”, “Admin”, “Viewer”) |
permissions | array | List of permissions for this role |
is_custom | boolean | Whether this is a custom role or default |
Permission Object Structure
Each permission in thepermissions array contains:
| Field | Type | Description |
|---|---|---|
id | integer | Permission identifier |
code | string | Permission code (e.g., “QR_CODE_CAN_ADD”) |
name | string | Human-readable permission name |
description | string | Detailed permission description |
is_boolean | boolean | Whether this is a boolean permission |
Examples
Get All User Roles
Response Example
Common Permission Codes
QR Code Permissions
QR_CODE_CAN_ADD: Can create new QR codesQR_CODE_CAN_VIEW: Can view QR codesQR_CODE_CAN_EDIT: Can edit existing QR codesQR_CODE_CAN_DELETE: Can delete QR codesQR_CODE_CAN_DOWNLOAD: Can download QR codesQR_CODE_CAN_EXPORT: Can export QR codes
Analytics Permissions
ANALYTICS_CAN_VIEW: Can view analytics dataANALYTICS_CAN_EXPORT: Can export analyticsANALYTICS_CAN_EXPORT_RAW: Can export raw analytics dataANALYTICS_CAN_VIEW_ALL_USERS: Can view analytics for all users
User Management Permissions
SHARED_USER_CAN_VIEW: Can view shared usersSHARED_USER_CAN_ADD: Can add new usersSHARED_USER_CAN_EDIT: Can edit user rolesSHARED_USER_CAN_DELETE: Can remove users
Lead Generation Permissions
LEAD_GENERATION_CAN_ADD: Can create lead listsLEAD_GENERATION_CAN_EDIT: Can edit lead listsLEAD_GENERATION_CAN_DELETE: Can delete lead listsLEAD_GENERATION_ENTRY_CAN_VIEW: Can view lead entries
Custom Domain Permissions
CUSTOM_DOMAIN_CAN_VIEW: Can view custom domainsCUSTOM_DOMAIN_CAN_ADD: Can add custom domainsCUSTOM_DOMAIN_CAN_DELETE: Can delete custom domains
Integration Examples
JavaScript - Fetch and Display Roles
Python - Get Roles and Permissions
PHP - Display Role Options
Use Cases
User Management Interface
- Role Selection: Populate dropdown menus with available roles
- Permission Display: Show what each role can do
- Access Control: Validate user permissions before actions
- Role Comparison: Compare different roles and their capabilities
API Integration
- Dynamic Role Assignment: Use role IDs when adding users
- Permission Checking: Verify user permissions before operations
- Role Validation: Ensure valid roles are used in requests
- Access Control: Implement role-based access control
Administrative Tools
- Role Audit: Review all roles and their permissions
- Permission Analysis: Understand what each role can access
- Custom Role Management: Manage custom roles and permissions
- Access Planning: Plan user access based on available roles
This endpoint is essential for understanding the available roles and permissions in your account. Use this information when adding new users or planning access control strategies.
Default roles (Manager, Admin, Viewer) cannot be modified, but you can create custom roles with specific permission combinations through the Scanova dashboard.
Authorizations
API key authentication. Enter your API key directly in the Authorization header.