Open the import page
- In the left sidebar, click the circle with your initials, then Settings.
- Under Company, click Users.
- Click Import Users.
Import Users
The first card, Import Users: “Upload a CSV file to bulk-create or update user accounts. Each row replaces the user’s roles and locations on this account rather than adding to them.” Click Download sample CSV and work from that file — it already has the header row exactly right. Field descriptions & allowed values expands to the same reference shown below.All five column headers must be in the file even when you leave
role or locations empty for a row. A missing column fails the whole import with “Missing required column: role” and nothing is created.loc-a1b2c3d4-e5f6-7890-abcd-ef1234567890. Open a location in Liftify and copy it from the Location ID field at the top of the page.
Giving someone more than one role
Put every role the person should have in therole cell, separated by
semicolons: Review Pro;View Only. Spaces around the semicolons are fine, and
listing the same role twice is harmless. The sample CSV includes a row done this
way.
The list is the person’s complete set of roles, not an addition to it, so
include every role they should end up with.
What the three locations values mean
- Blank — no location restrictions. The user sees every location, including ones you add later. This also clears any restriction they had before.
ALL— restricts the user to the locations that exist today. Locations added later are not granted automatically.ALLmust be the only value in the cell; mixing it with location IDs fails the row with “ALL must be the only value in the locations column”.- A semicolon-separated list of location IDs — exactly those locations.
ALL look alike on the day you run the import and diverge the moment
you add a location. Pick blank if you want new locations included automatically.
Upload the file
- Under Select CSV file, choose your file.
- Send invitation emails to imported users is ticked by default. “When unchecked, user accounts are created without sending welcome emails.” Untick it if you’re loading people ahead of a launch date and want to tell them yourself later.
- Click Upload & Process.
Import Notifications
The second card, Import Notifications: “Upload a CSV file to bulk-configure notification preferences for users.” Everyone in this file must already exist in your account — this import never creates anyone. Run the user import first, then this one.The columns the page lists are the ones your own account can use. A column for an
event you do not have switched on is not shown, and the accepted values for
task_statuses are your account’s own open status names, listed on the page
with an example built from two of them.Get a status name wrong and the row fails with “task_statuses not found among
this account’s open statuses: … Accepted values: …”. A bad task_scope
fails with “Invalid task_scope ’…’. Accepted values: …”.job_scope set to My jobs narrows the rule to feedback credited to that
person’s own jobs, rather than everything the rest of the row matches — the same
choice as Whose work on the notification form. See
Set your notification rules.
You can’t point a row at somebody else’s jobs. There is no column naming an
employee, so pick that on the rule itself afterwards.A
My jobs row for a person who isn’t linked to an employee record still
imports, and comes back as a Success with a warning: “Imported, but
tom@example.com isn’t linked to an active employee record, so this “My jobs” rule
won’t send anything until they are. Link them in Settings → Employees.” Link
them and the rule starts working — you don’t have to re-run the import.review.created and survey_response.created support all four; ticket.* events support instantly, daily; ticket.mentioned supports instantly only.”
One row per rule. A person who wants instant alerts for one-star reviews and a daily task digest gets two rows.
Include account notification defaults is ticked by default: “When checked, each user in the CSV will also receive the account’s default notification rules.” Untick it when the CSV is the complete picture and you don’t want your account defaults layered on top. See Set default notifications for new users.
Rules for somebody who has not accepted their invitation yet are created switched
off, and switch themselves on the first time that person signs in. The rules from
your CSV and any account defaults layered on top both work this way, which matches
how rules you build for someone on the Users page behave.This matters if you load people ahead of a launch date: nobody gets Liftify mail
until they have actually logged in. Previously these rules were created switched
on, so people who had never accepted their invitation — and in some cases never
would — started receiving notification emails as soon as the import finished.Somebody who is already in and active gets their imported rules switched on
straight away, as you would expect.
Check what happened
The User Imports list shows every run with Date, Type (Users or Notifications), Status, Total, Success, Failed and Initiated By.
Nothing refreshes on its own — reload the page to see the status move.
Click a row for Import Details: the filename, whether invitations were Sent or Not sent, Total Rows, and a Success / Skipped / Failed count. Below that, Results lists every row of your file with its Row number, the first few values from that row under Data, a Status badge — Success, Skipped or Error — and a Message.
For an updated user the Message spells out what the row actually applied,
like “Updated user dana@example.com — roles: Reviews, View Only; locations: 3
restricted”, or “locations: all (restrictions removed)” where you left the cell
blank. Read those after any import that touched people who were already in the
account.
Fix the failed rows in a new CSV containing only those rows, and upload again. Rows that already succeeded don’t need to be re-run, and re-running them would overwrite the people they refer to.

