Importing

There is a Web GUI importer available in the Import section that will allow you to upload and process and import a **comma-delimited **CSV through the web interface.

For most instances, the GUI importer is the easiest way to import large amounts of data, however we also offer a command line tool, so if you have more than several hundred records to import, you may wish to use that instead.

Splitting Large Import Files

Linux/Mac users with parallel or coreutils installed can run the following to break their large CSVs into smaller CSVs for easier processing:

# Split a large CSV into smaller CSVs for easier processing
cat bigFile.csv | parallel --header : --pipe -N9999 'cat >file_{#}.csv'

This will split your CSV into smaller CSVs with the header intact. In the above example, we use 49999 as the split (so, 50k once you include the header.) You can increase or decrease this number depending on the memory your Snipe-IT server has allocated.

Make sure you have your organization's domain name, email format and username format set in Admin > Settings, so that it knows what domain to use when generating email addresses and usernames if none are provided in your CSV.

Hosted customers can send their CSVs to [email protected] if you're having trouble with the Web GUI and we'll take care of it for you. Please note that self-hosted customers should go through normal free support channels.

❗️

IMPORTANT

BACK UP YOUR DATABASE FIRST. Always run a backup (Admin > Backups) before running the importer, so that you have a clean place to roll back to if something goes wrong.

CSV Format

The importer reads the first row of the CSV file to determine what each column is. It tries to guess what the column is based on common phrases (employee number vs employee no, etc) but if it gets it wrong, you can always override that mapping using the column mapper in the import UI.

❗️

IMPORTANT

Please make sure there are no leading or trailing spaces in the header column names, and no blank lines at the end of your CSV. Header field names are not case-sensitive.

The CSV importer can currently only support automatically checking assets out to people or locations, not other assets. You should use the bulk checkout functionality for importing assets that are checked out to non-people.

Sample CSV Downloads

You can find a sample CSV to start from in the source on Github.

Limitations & Notes

The importer isn't very smart - it's not really meant to be, since anything we could try to assume on your behalf could make a mess of your data.

It currently does not do any validation other than checking to see if the record already exists in the database. It doesn't know that Dell Inspiron is the same asset as Dell Insprion. The quality of your data will make a big difference in the results you get, so if there's a lot of inconsistency, you're going to end up with with duplicates because the app has no way of knowing what you meant from what you wrote.

Exporting Comma-Delimited CSVs on Windows

This is most common for Windows users in non-US regions, but if your Excel export is generating CSVs that are separated by something other than commas (semicolons, tabs, etc), you'll have to make a configuration change on your Windows system to get it to export correctly.

  • Edit your Regional Settings or Windows (Regions and Language).
  • On the Formats tab hit Additional Settings....
  • Change the List Separator to the character you want to use as your CSV separator.

Apply those changes, and now you can go back to Excel and save the file as a CSV. It should be saved using your chosen separator.