Skip to content

CSV Permissions Converter

Convert CSV files for bulk user operations: either updating existing user permissions or creating new user accounts with permissions.

INFO

Download role mapping CSVs from the Platform Role Mappings Notion page.

1
Operator Mappings
2
Upload CSV
3
Review & Export

Configure Roles

Define permission mappings for each role. These will be applied when users are uploaded.

📄

No roles configured

Add a role manually or import a CSV file

How to Use

The tool follows a 3-step wizard flow:

Step 1: Operator Mappings

Configure the default permission mappings for each role:

  • Toggle checkboxes to customize which permissions each role has
  • Add custom roles using the "Add Role" button
  • Export/import role mappings as CSV for reuse

Step 2: Upload CSV

  1. Select a mode:
    • Create Users - For creating new user accounts with permissions (output compatible with admin/accounts/user/import-csv/)
    • Update Permissions - For updating permissions of existing users (output compatible with admin/accounts/companymembership/import-csv/)
  2. Upload your CSV file with the required columns (see format below)

Step 3: Review & Export

  1. Review and edit the loaded users:
    • Adjust roles and permissions inline
    • For Create mode: fill in names and company (required)
    • Set QA/QC status for each user
    • Configure geofencing options
  2. Export CSV to download the formatted output file
  3. Export Permissions CSV (shown only if you modified mappings in Step 1) to save your updated role mappings

Operator Mappings CSV Format

Role mappings can be exported/imported as CSV:

csv
role,region_required,map_view,map_edit,epasep_view,...
Super User,no,yes,yes,yes,...
Observer,no,yes,no,no,...

Input CSV Format

Update Permissions Mode

Required columns: email, role

Optional columns: qa/qc, geofence_area_names, geofence_shape

csv
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

csv
email,first_name,last_name,company_name,qa/qc
newuser@example.com,John,Doe,Acme Corp,yes
another@example.com,Jane,Smith,Beta Inc,no

Output CSV Format

Update Permissions Mode Output

Columns: email, role, qa/qc, geofence_area_names, geofence_shape, followed by all permission columns

csv
email,role,qa/qc,geofence_area_names,geofence_shape,map_view,map_edit,...
admin@example.com,Super User,yes,,,yes,yes,...

Create Users Mode Output

Columns: first_name, last_name, email, role, company_name, qa/qc, geofence_shape, geofence_area_names, followed by all permission columns

csv
first_name,last_name,email,role,company_name,qa/qc,geofence_shape,geofence_area_names,map_view,...
John,Doe,newuser@example.com,Super User,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

csv
geofence_area_names
"Area1,Area2,Area3"

Option 2: Shape (GeoJSON/WKT) - Custom geometry definition

csv
geofence_shape
"{""type"":""Polygon"",""coordinates"":[[[0,0],[1,0],[1,1],[0,0]]]}"

Importing into Django Admin

Follow the instructions at User management.