Our most flexible method of syncing your organization’s people data into Sift is through a CSV (comma-separated values) file. You may also choose to use our Secure File Transfer Protocol (SFTP) integration to safely send files to Sift on an automated basis.
Generating your CSV file
Read Full Transcript
Read Full Transcript
"One of the main things you need to do when setting up your Sift account is to upload your people data. This will allow you to see who is in your organization, who they report to, and also will allow you to invite them to the platform so that they can begin to fill out their profiles. Now there are a few ways you can get your information into the system. If your company utilizes Azure Active Directory for Microsoft, now known as Entra ID, you can simply have an administrator that has the proper rights and access to that system, authorize a connection to the platform, and Sift will automatically check for changes once an hour and bring them in.
This is the easiest method and is recommended if you are able to go this route. We also integrate with Google Workspace that acts very similar to the Azure AD /Entra import. Administrative access to Google Workspace is required for this as well. Another option is uploading via a CSV file that you can either manually keep up to date with information and upload as needed, or, if permitting, you can work with your HRIS vendor to set up a scheduled job that will extract the data out from their system into that CSV file, and then drop it into what is known as an SFTP folder, to automate the process.
Once Sift sees this file come in, we will automatically process it and update the necessary changes so that all you have to do is sit back, relax, and let the automation do the work for you. We additionally support direct integrations with Okta, UKG, and LDAP that require a bit of additional setup. If you use one of these source types, we kindly ask that you reach out to our support team. For this particular video, we will be going through the manual upload prompt using a CSV file.
If you need to sample CSV file showing examples of how this file can be set up, similar to this one here, Please reach out and we will be happy to send something over. Now this is just to give you an idea of what kind of data can be brought in. If you're generating a file from your HR area, system, we highly suggest that you use the attribute names in that system that are exported instead of what you see here in the sample, so that way, you don't have to make any additional manual changes to the file prior to uploading it.
To begin the process, of uploading your people data into Sift, you'll want to log in to your admin panel and go to the people data section on the left hand side. And from here, we're gonna use upload a CSV and create a new directory. Next up, you'll wanna give the directory a name, and this can be whatever you wanna call it. And it can always be changed at a later date and time, but this is just a way for you to know who is in this particular directory.
So if you have just one directory with all of your employees, you can call all employees, but say you have a directory with all of your full time employees, but then you also wanna have one for contracted employees just to keep them separate. You can have a second directory as well for your contracted employees. So once we give it a name, I'll go ahead and click next, and it's gonna ask us to upload our prepared CSV file. Now, before you go ahead and do that, make sure you read this section here in yellow. It is required to have a separate first name, last name, and an email address in order to create the record within the system.
There's also a field called primary key, which is a unique identifier that each person has so it knows where to write the data. This is just in case you happen to have two people with the same name. John Smith, for example, it knows which John Smith to write the data to. Typically, we suggest using an employee ID number if you happen to have it. If you don't, the email address can be used in its place. So next, we're gonna click on this area here, which will allow us to browse out to a prepared file on our machine that has our people on it. In this case, we're gonna use the Sift demo directory that we have.
And once you click on map your data, it's gonna take you into the screen where you ahead and set the attributes from your file to where they should match within Sift. Now as it states here before you map, what we will do is we'll take a look at the source file and try to suggest some mappings for you to help you get started, so that way you're not going to have to map each individual one separately. Now, as you can see, some of our attributes have already been mapped for us. In this case, we're using the ID field from the CSV as our primary key.
And again, as I previous stated, if you happen to have the employee ID number, we highly suggest using that as always going to be a unique value that will never change. If you don't happen to have that, their email address can work just fine. So you would just hit the drop down and choose email in its place. So the next step that we can do, which is completely optional, but we highly recommend doing it, is to build out your org chart so that you can see the hierarchy and structures within your Now to do this, you need to have two unique values. One for your supervisor and one for your employee.
The example we show here uses the supervisor's email to map the employee's email. So we'll go ahead and set that right now. So if we click on this box, we can either scroll and find team leader email, or we can start typing it if we wanna find quicker that way. So we're gonna use the team leader email field, and we're gonna go ahead and map it to the employee email field. So we can see here that we have a couple bits of preview data that shows that this mapping is set. Now as I stated, we do need to have a valid first name, last name, and an email address. And we've already went ahead and mapped those fields for you.
So just make sure that they are correct before proceeding forward. If you happen to have additional values that you want to have mapped from your CSV into Sift, you'll go ahead and set them here as well. Anniversary date, we can go ahead and set as hire date, which is what we call it in our system. And we wanna change the company name and set that. And if we wanna have their phone number, we can do that as well. So now that everything is set and ready to go, we can go ahead and click on this save mappings button.
This will go ahead and lock everything in and give us a prompt to go ahead and initialize the sync. So we'll go ahead and do that and this should only take a couple of minutes for your data to load into the system. And as you can see, that job is currently running. Alright. Now that our job has finished, we can see that it brought in 1,002 records from our CSV file and the job completed successfully. And as you can see from the sync log, we did in fact create 1,002 new profiles. If you were just updating your existing directory with new employee hires, this number would change to show the new number of employees that were entered. So say you added five new people, this would say five here.
If you updated a handful of profiles to show job title changes or phone number updates, we would see this number change here. Anybody removed from the file would show here. Anybody was re added back that had once been removed, which show here. And if you happen to see a number here for the primary key email collisions, that just means that it saw a duplicate of either the primary key or the email address used in the system. So what you'll wanna do is go back into your CSV file Find those duplicates and correct them and then re upload the file.
Now that your file has been uploaded in people have been loaded into Sift, you can click on this return to Sift button at the top left to go back into your instance and make sure everything is appearing properly. You can do so by individually looking someone up using the search bar, or you can click on directory to see a list of everybody that was loaded into your system. To view the org chart, you can click on the org chart button on the top bar, and this will take you into the org chart. You can also access the org chart by going back to the directory and clicking on the org button next to someone's name, and this will take you directly to their card and show you who they report to.
And that's it. You've now successfully loaded in your people data via a CSV file and are ready to use Sift. Moving forward, any changes that need to be made, whether it is to add new employees, remove someone no longer within your organization, or to make changes to an existing user must be done by updating your existing using CSV file and then overwriting the current directory that you just created. You do not wanna delete the directory and start with a new one. As in doing so, will cause the users who have been invited and began filling out their profiles to lose access, and they will need to be added again and any info that they end entered into the system such as their interests, skills, and so forth will need to be filled out again as well. And if you have any questions, feel free to reach out and we'll always be here to help. Happy Sifting.
From your organization’s system of record, such as your HRIS system, you’ll need to export a CSV that contains your people data. If you do not have an existing CSV to upload, you can also create one from scratch. If you need a place to start, click here to download an example CSV.
The only attributes we require for each person (for Primary Sources) are their first name, and last name, but any additional properties will make your profiles that much richer! You will need to export or create a CSV file with the first row as headers and each subsequent row representing a single person.
A few important notes:
Each person (row) must have a unique identifier value. If there are any rows that contain duplicate values, or empty values, they will be ignored when you run your data sync.
Additionally, each person (row) must have a value for first name and last name.
If you would like to set up your Org Chart, you need a column in your CSV that includes a reference to the person's manager.
For Primary Sources, the full file must be uploaded on each sync. If Sift detects any rows that are missing, it will delete any associated Sift Profiles on subsequent data syncs.
For Complementary Sources, you may upload partial data, as they only append to your existing Profiles, and do not provision them.
Uploading a CSV file in the Admin Dashboard
There are a couple of different places you can upload your CSV on the Admin Dashboard:
During the initial Directory/source setup wizard when the source is first created.
After you've created your CSV source, you can update your people data by uploading a new CSV on the Source Dashboard by clicking the "Upload CSV File" button when a sync is not already running.
We'll walk through the first scenario noted above, but the process for the second is very similar.
Step 1: Upload your CSV file
Use the file upload area to import your CSV file. Only files with a ".csv" extension are supported.
The mappings page will automatically provide suggestions based on the headers in your CSV. To learn more about setting up mappings, click the link above.
Step 3: Wait for the sync to complete
After uploading your file, Sift will process the file and update your people data. This should only take a minute or two, but could take longer if you have a very large file. The Sync Status indicator at the top of the page will let you know once your sync is complete.
Debugging Failed Syncs
For further documentation on possible CSV sync errors, check out our troubleshooting article.
Check Required Data Mappings
If Sift finds people in your data source who do not have all of our required mappings (unique identifier, first name, last name, and email), they will be ignored. If no people are found that have all of these attributes, then the sync will fail. Ensure that all people you want to be synced into Sift have a value for all of these mappings.
Contact Us
If these steps do not fix the issue, you can contact us using the Chat button in the Admin Dashboard and we can help you investigate!
Additional Setup (Optional)
The below sections provide additional options for importing photo data into Sift, or automating the CSV sync process with SFTP/PGP. These are not required for setup.
Creating a photo CSV
After initially uploading your data CSV, you can optionally provide photos in a separate file. Our photo CSV files require a more specific format. You will need to include the following:
Unique Identifier column: You need a header named the same as your Unique Identifier Header in your data file. For example, if the Unique Identifier in your data file is called employeeId , the header in your photo file should be named the same.
Photo data: You need a header named exactly photoBinary. Values under this column should include a photo encoded in either base64 or hex. If encoded in hex, the values must start with the identifying hex prefix 0x.
Like a Complementary Source, each photo file will append to existing data. Therefore, it is only necessary to include new or updated images. Discluding a row from this file will not remove the photo from the associated Profile.
Uploading a photo CSV file manually
Step 1: Upload your CSV file
Click the Import Photo CSV button as seen below and go through the steps to upload your file.
Step 2: Wait for the sync to complete
After uploading your file, Sift will process the file and update your people data. The Sync Status indicator at the top of the page will provide an update, and once the sync has been completed, it will give you the time when your directory was updated.
Integrating with SFTP
Instead of uploading CSV files on our Admin Dashboard, you may instead choose to drop them into an SFTP directory in an automated fashion. To set up the SFTP integration, you'll need to generate an SSH key pair (RSA) and provide your public key to Sift. We will then provide you with connection details. Note that as Security Standards continue to evolve, Sift follows industry standards around ssh-key pairs, and no longer supports RSA/SHA1 by default, nor DSA key pair types. We recommend using one of the following key generation types(or greater) when generating your key pair:
ssh-keygen -t rsa -b 4096
ssh-keygen -t rsa -b 2048
ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519
When creating the SSH Key pair that you will use to connect to Sift, note that it will be required to be OpenSSH compatible, and CANNOT be in SSH1, SSH2, Putty/.ppk, X.509, PKCS#12, and non-PEM formatted types. We recommend using ssh-keygen to create your key pair, however other tools such as PuTTYgen will work, but you must export the keys in OpenSSH format, and not just save them as a .ppk.
Automated HR system integrations
Many HR systems provide the ability to export reports on an automated basis via SFTP. After setting up the SFTP file drop on Sift as outlined below, you may be able to provide the information to your HR vendor and set up automated reports without much extra work. For detailed instructions on setup, see your HR system's documentation.
Sift Guides for Specific HR Systems
Step 1: Provide your public key to Sift
Paste your SSH public key in the text area below.
Step 2: Connect to your SFTP directory
Use the provided information to connect to your SFTP file drop.
Note: Depending on the tool you're using to integrate on your end, the Drop Folder may require the full path displayed in the admin dashboard (Ex: "/home/abc123/uploadProd") or the relative path (Just "uploadProd").
Step 3: Drop a file
Before dropping your file, be sure to set up your mappings, with the source column corresponding to the headers in your CSV file.
File naming
We recommend naming your files with some sort of timestamp identifier, such as:
Photo file names should include the prefix Photos_Full_
Data file names may be any other name. Ex: employees_{timestamp}.csv
Dropping a CSV file in the uploadProd folder will automatically trigger a data sync to begin within seconds. You should be able to follow the progress on your Admin Dashboard as usual.
The uploadTest should be used for testing on your end or to debug any issues with the Sift team if needed. Dropping files here will not trigger a sync.
Encrypting with PGP (Optional)
If you would prefer an additional layer of security, you may encrypt your files with PGP before dropping them through SFTP. You will need to encrypt your file with our public key. To obtain this key and get help setting this up, please contact us.







