CSV Integration
For a less development heavy approach to sync your data into OurPeople you can take advantage of our CSV integration.
You can upload CSV files containing your company data to an SFTP server and OurPeople will automatically import the data into your OurPeople space.
CSV files are read periodically and used as a source of truth for your data. This means that any changes you make to your CSV data will be reflected in OurPeople after a short delay. Exact timing of the delay will vary, but typically you can expect changes to appear within 4 hours.
Getting started
Our CSV integration is offered on request. If you are interested in using this integration please contact support@ourpeople.com.
CSV format
The integration requires 3 CSV files to be present on the SFTP server. Each file must adhere to these requirements:
- The first row must contain column headers
- Each row must contain the same number of columns
- Each column header should be unique
- Column headers are case-sensitive
- Values should be separated by a comma (
,
) - Rows should be separated by a newline character (
\n
) - Values can optionally be enclosed in double quotes (
"
) - File names must be constant
Also note that:
- Records that were present and subsequently removed from a CSV file will be removed from OurPeople. We treat the CSV files as the source of truth and will update OurPeople to match them.
users.csv
Download an example users.csv
This file contains information about your users. Each row represents a single user and each column represents a single attribute of that user. The following columns are supported:
id
A unique and constant ID for the user. Required.
employeeId
An identifier for the employee. The employee ID is displayed as additional information in the user's account, it is not used for any relationships. Optional.
firstName
The user's first name. Required.
lastName
The user's last name. Optional.
emailAddress
The user's email address. Optional.
mobileNumber
The user's mobile number in E.164 format. Optional.
deactivated
A 1
or 0
value indicating whether the user is deactivated. Deactivated users are synced but marked as frozen in OurPeople. You can use this to suspend a user's access to OurPeople. Optional.
roleId
The user's access level. Must be one of the roles listed below. If no role is provided, any value assigned manually will be used instead. Optional.
ROLE_USER
- App UserROLE_APP_BROADCAST
- Cover SenderROLE_APP_ADMIN
- Cover AssignerROLE_BROADCAST_ADMIN
- Broadcast AdminROLE_ADMIN
- Team AdminROLE_SUPER_ADMIN
- Global Admin
adminTeamId{1..n}
The id
of a tag in tags.csv
. You can specify multiple tags by adding multiple adminTeamId
headers, each one with a unique suffix, e.g. adminTeamId1
, adminTeamId2
, etc.. When paired with a roleId
value of ROLE_ADMIN
or ROLE_BROADCAST_ADMIN
the user will be given admin permission for the given teams. If no teams are provided, any values assigned manually will be used instead. Optional.
tags.csv
Download an example tags.csv
This file contains information about your tags. Tags are used in OurPeople to provide powerful filtering options, allowing you to target content, or limit access to people with specific combinations of tags.
OurPeople supports the following tag types: Region
, Team
, Department
, JobTitle
and Skill
. We will map your tags to one of these types.
Each row in the CSV represents a single tag and each column represents a single attribute of that tag. The following columns are supported:
id
A unique and constant ID for the tag. Required.
name
The name of the tag. Required.
source
A string denoting where the tag came from in your own system or what it represents. Sources are used to map against our own tag types. For example we might map a tag with source "job" to tag type "jobTitle" in OurPeople. Required.
profiles.csv
Download an example profiles.csv
This file pairs the data in your users.csv
with the data in your tags.csv
. Each user can have multiple profiles. A profile is a collection of tags which together can define the user's roles/responsibilities.
You can put all of your tags in to a single profile, and this is typical for most users as they typically only have one role. But there are cases where a user might have two distinct roles and being able to target content at those roles separately is useful.
For example a person might work 50% of their time as a "HR Manager" in one location and 50% of their time as a "Practice Manager" in another. In this case you might create two profiles for the user, one with tags "Region: California" and "JobTitle: HR Manager" and another with tags "Region: Nevada" and "JobTitle: Practice Manager".
Each row in the CSV represents a single profile and each column represents a single attribute of that profile. The following columns are supported:
id
A unique and constant ID for the profile. Required.
userId
The id
of a user in users.csv
. Required.
tagId{1..n}
The id
of a tag in tags.csv
. You can specify multiple tags by adding multiple tagId
headers, each one with a unique suffix, e.g. tagId1
, tagId2
, etc.. Optional.
SFTP server
Once your files are ready they can be hosted on any SFTP server. If you would like to host on the OurPeople SFTP server you will first need to request credentials to grant you access. Alternatively you will need to provide connection details and credentials to your own SFTP server. In either case please contact support@ourpeople.com so that the location of your files can be correctly configured and your integration enabled.
Note that the OurPeople SFTP server adheres to same level of data protection as the rest of the OurPeople platform. All data is encrypted in transit and at rest.
Sync results
Download an example sync_result.json
At the end of each sync a sync_result.json
file will be uploaded to the same location as your CSV files. This file will contain a summary of the sync results, including an error message if one is available.
sync_result.json
{
"syncId": string,
"finishedAt": string,
"success": boolean,
"errorMessage": null | string
}
Other integrations
As well as offering a CSV integration, we also integrate with some well known HR systems such as ADP, Paychex and CIPHR. If you are interested in knowing more about our other integration options please contact support@ourpeople.com.