CSV Permissions Converter
Convert CSV files for bulk user operations: either updating existing user permissions or creating new user accounts with permissions.
Upload CSV
Upload a CSV file with columns: email (required), role (required), qa/qc, and optionally geofence_area_names and/or geofence_shape for geofencing
No users loaded yet
Upload a CSV file to get started
Operation Modes
The tool supports two modes, selected via the toggle at the top:
Update Permissions Mode
Use this mode to update permissions for existing users. The output CSV is compatible with admin/accounts/companymembership/import-csv/.
Create Users Mode
Use this mode to create new user accounts with permissions. The output CSV is compatible with admin/accounts/user/import-csv/.
How to Use
Step 1: Select Mode
Use the navigation bar at the top to choose between:
- Create Users - For creating new user accounts with permissions
- Update Permissions - For updating permissions of existing users
- Settings - For configuring role mappings
Step 2: Configure Role Mappings (Optional)
In the "Settings" tab, customize the default role mappings:
- Toggle checkboxes to customize which permissions each role has
- Add custom roles using the "Add Role" button
- Export/import role mappings as JSON for reuse
Step 3: Upload and Edit
- Prepare your input CSV with the required columns (see format below)
- Upload the CSV file using the file input
- Review and edit:
- For Update mode: Adjust roles and permissions
- For Create mode: Fill in names, company (required), and permissions
- Set QA/QC: Use the Yes/No radio buttons to set QA/QC status for each user
- Download the output CSV: Click "Download CSV" to get the formatted file
Input CSV Format
Update Permissions Mode
Required columns: email, role
Optional columns: qa/qc, geofence_area_names, geofence_shape
email,role,qa/qc,geofence_area_names
admin@example.com,Super User,yes,
manager@example.com,Event Manager,no,"Area1,Area2"
viewer@example.com,Observer,,Create Users Mode
Required columns: email, company_name
Optional columns: first_name, last_name, qa/qc, geofence_area_names, geofence_shape
email,first_name,last_name,company_name,qa/qc
newuser@example.com,John,Doe,Acme Corp,yes
another@example.com,Jane,Smith,Beta Inc,noOutput CSV Format
Update Permissions Mode Output
Columns: email, qa/qc, geofence_area_names, geofence_shape, followed by all permission columns
email,qa/qc,geofence_area_names,geofence_shape,map_view,map_edit,...
admin@example.com,yes,,,yes,yes,...Create Users Mode Output
Columns: first_name, last_name, email, company_name, qa/qc, geofence_shape, geofence_area_names, followed by all permission columns
first_name,last_name,email,company_name,qa/qc,geofence_shape,geofence_area_names,map_view,...
John,Doe,newuser@example.com,Acme Corp,yes,,,yes,...Geofencing Options
You can restrict user access to specific geographic areas using one of two methods:
Option 1: Area Names - Comma-separated list of predefined area names
geofence_area_names
"Area1,Area2,Area3"Option 2: Shape (GeoJSON/WKT) - Custom geometry definition
geofence_shape
"{""type"":""Polygon"",""coordinates"":[[[0,0],[1,0],[1,1],[0,0]]]}"Importing into Django Admin
Follow the instructions at User management.