Import users with the import wizard
Open a resource, choose Import users, and walk through the three-step wizard: Select Users, Map your columns, then Review. A successful import shows Rows successfully imported.
With the import wizard you can either:
Import a full user list — create or refresh users and their access in Ploy from your file or selection. Optionally turn on Make this the definitive list so anyone missing from the import is marked revoked in Ploy only (access in external systems is not removed).
Update existing users only — turn on Only update existing users to refresh data for people who already have access. Ploy does not create new users or grant access; unmatched rows are skipped.
You can import from a CSV file or select people already in Ploy. For a different path that uses scrape-based discovery, see How to import users to Ploy using the Browser Extension.
Importing users does not grant them access. Use the import wizard to create or refresh user and access records in Ploy; to give someone access to a resource, use Grant Access to Resource.
Before you start
You need access to the resource’s access actions so Import users is visible on the resource access bar.
For CSV import, prepare a .csv file. On the first wizard step you can choose Download Template to get a sample import_template.csv.
Open the import wizard
Start the wizard from the resource you want to update.
Open the resource in Ploy.
On the resource access bar, click Import users.
The wizard opens on Select Users with the description Choose how to import users.
Import from a CSV
Upload a CSV on Select Users, map columns, then review and import.
Select Users
Drag a CSV onto the drop zone, or click the zone to choose a file. The zone shows Drag and drop a CSV file here, or click to select (and Drop the CSV file here while you drag).
Optionally click Download Template if you need a sample file format.
Confirm the wizard previews the first five rows of the file.
Click Next.
If the file is empty or unreadable, the wizard can show errors such as No rows found in this CSV., Some CSV rows could not be parsed., or Could not read file.
Map your columns
Point each Ploy field at the CSV columns and clean values as they flow in.
For each Ploy field, choose the matching CSV column.
Map the fields your import needs. The UI marks requirements as follows:
Email — Required for humans
Ext ID — Required for non-humans
Granted At — Required
Identity Integration — Required
Identity Type — Required
Map optional fields when your file includes them: First Name, Last Name, Display Name, Last Access, Entitlements, Tags, and Auth Type.
If needed, add transforms on a mapped field (for example Trim whitespace, Lowercase, Find & replace, or Split into multiple) so values match what Ploy expects.
Under Advanced, optionally open Ignore Rows to skip rows that match column conditions, or use Merge duplicate identities when the file has duplicate identity rows.
Optionally turn on Only update existing users if this import should refresh people who already have access and skip unmatched rows without creating anything new. With this option on, Granted At and Identity Type can be skipped.
Click Next when mappings are valid.
You cannot continue while mapping issues remain. The wizard blocks progress with messages such as Map fields before continuing or Cannot import — fix these field mapping issues:.
Saved column mappings
Saved mappings are shared with everyone in your organisation — anyone can edit or delete them.
Use Load a saved mapping to apply an existing mapping.
Use Save, Save as new mapping…, or Overwrite “...” to store the current mapping. The save dialog is titled Save column mapping (placeholder example: e.g. Workday people export).
Deleting a mapping removes it for everyone in your organisation and cannot be undone.
When a mapping was used for this app before, the wizard can auto-load it and show a toast such as Loaded "...".
Ignore Rows
Use Ignore Rows to skip rows matching specific column values.
Open Advanced, then Ignore Rows.
Under Ignore rows where, choose a column (Select column), an operator, and a value when the operator needs one.
Add more conditions with Add condition (additional rows use or where).
Operators are:
=is not
contains
is one of (enter values such as
Value 1; Value 2)is set (no value field)
is not set (no value field)
Review and import the CSV
Confirm the import summary, then run it.
On Review (Review and import), check Import Details, including Import Method as CSV Import, Users to Import, and any Rows Merged or skipped-row summary.
Optionally turn on Make this the definitive list to set this import as the source of truth for user access. You cannot combine this with Only update existing users.
Click Import.
When the import succeeds, Ploy shows Rows successfully imported. Use Back to change earlier steps, or Cancel to close the wizard.
Select users already in Ploy
Import people who already exist in Ploy without uploading a CSV.
On Select Users, leave the CSV empty and use Select users to import to choose the people to include.
Select at least one user, then click Next.
On Map your columns, complete the member mapping step. The full CSV column-mapping UI is for file imports only.
On Review, confirm Import Method shows User Selection, then click Import.
If no users are selected, the wizard shows Select at least one user to continue. If neither a CSV nor users are provided, it shows Upload a CSV or select users to continue.
Only update existing users is supported for CSV imports only, not for direct user selection.
What each import mode does
Choose the mode that matches whether you are creating access data, refreshing metadata, or reconciling the full list in Ploy.
Mode | What happens in Ploy |
|---|---|
Full user list (default) | Creates or refreshes members, identities, and access rows from the mapped file or selection. |
Only update existing users | Refreshes data for people who already have access. Does not create new users or grant access. Rows that do not match an existing user are skipped. Humans are matched by email; non-human identities by ext ID. |
Make this the definitive list | Treats the import as the source of truth for user access. Users not on the list are marked revoked as of today in Ploy only — access in external systems is not removed. Turn this off to add imported users without revoking anyone missing from the list. Cannot be combined with Only update existing users. |
Common validation rules
These checks apply when you import from CSV.
Identity type must be mapped unless you are in update-only mode (Identity type column must be mapped).
When the file includes humans, email must be mapped and every human row needs an email.
Non-human identities can only be imported for apps, not for non-app resources. Non-human rows need an ext ID column mapped and a value on every row.
Update-only cannot be combined with definitive list, and update-only cannot be used with user selection.
If nothing valid remains after mapping and filters, the wizard shows No valid rows to import.