---
title: HRIS Integration
slug: hris-integration
docTags: 
createdAt: 2024-07-18T16:18:21.225Z
---

# HRIS Integration

Teleskope platform has the capability of connecting with various HRIS systems to keep the data in sync. Teleskope supports HRIS integration by using a flat file processing mechanism. 

## Benefits of Using the HRIS integration:

- Existing user records in Teleskope platform can be updated with new HRIS data.
- New users can be added.
- Terminated users can be marked for deletion.

# Supported File types

The file can be in CSV or TSV (tab separated) format, with one row for each employee. 

# File Transfer Mechanisms Supported by Teleskope

- Use teleskope uploader HTTP POST API to send the file.
- Stage the file on your SFTP server and provide SFTP credentials to Teleskope.

## Key Considerations

- Separate files can be sent for Active Users and Terminated Users.
- If a separate terminated user file is not sent, then users who are not found in Active User file are marked as inactive and they will be deleted from the system after 30 days of inactivity.
- One of the fields in the file should be unique employee identifier that is immutable, e.g. employee id or network id or email and it should match the unique identifier sent in SSO SAML NameID 

NOTE: ANY NUMBER OF FIELDS CAN SENT. TELESKOPE CAN MAP THE FIELDS TO EXTENDED ATTRIBUTES. ONE OF THE FIELD SHOULD BE A UNIQUE IMMUTABLE IDENTIFIER (AND SHOULD MATCH SSO SAML NAMEID)&#x20;
&#x20;						&#x9;

# File Format Specifications

### CSV

In order to process HRIS data contained in CSV file, the file should follow the following specifications:

**File Name:&#x20;**&#x66;ile name should not contain spaces and it should end with .csv (case sensitive), e.g. ActiveUsersForTeleskope.csv If file is pgp encoded then the file name should have .pgp suffix, e.g. ActiveUsersForTeleskope.csv.pgp

**File Encoding:&#x20;**&#x75;tf-8

**File Contents:**

- A header row is required to help Teleskope system understand the field mappings.
- Each row should represent a user, and columns should represent values.
  - Columns should be separated by commas.
  - In case the value contains a comma then the value should be enclosed in double quotes.
  - In case the value contains a double quote, then the contained double quote should be escaped by \\
- Rows should be terminated with a newline
- Empty values should be left empty

Example of the format given below:
&#x20;							&#x9;
firstName,lastname,email,Job Title 

John,Doe,john.doe\@email.com,Sr Manager 

Jane,Doe,jane.doe\@email.com,"Sr. Director, Operations"		&#x9;

### TSV		&#x9;

In order to process HRIS data contained in TSV file, the file should follow the following specifications:

**File Name:&#x20;**&#x66;ile name should not contain spaces and it should end with .tsv (case sensitive), e.g. ActiveUsersForTeleskope.tsv If file is pgp encoded then the file name should have .pgp suffix, e.g. ActiveUsersForTeleskope.tsv.pgp

**File Encoding:&#x20;**&#x75;tf-8

**File Contents:**

- A header row is required to help Teleskope system understand the field mappings.
- Each row should represent a user, and columns should represent values.
  - Columns should be separated by \<tab>.
  - In case the value contains a \<tab> then the value should be enclosed in double quotes, or escaped using \\.
  - In case the value contains a double quote, then the contained double quote should be escaped by \\
- Rows should be terminated with a newline
- Empty values should be left empty

Example of the format given below:
&#x20;							&#x9;
firstName	 lastname	 email		Job Title
John		Doe 		john.doe\@email.com 		Sr Manager
Jane 		Doe 		jane.doe\@email.com 		Sr. Director, Operations&#x20;
&#x20;				&#x9;

# File Encryption

Customer can encrypt the file using Teleskope's public PGP key. Encrypting the file adds another layer of security as it ensures the file can only be opened by Teleskope. Teleskope's public PGP key can be downloaded from the link below.

::File{src="https://api.archbee.com/api/presign/SqF2VrGIxvtfXjypqplfY-WfSjG3crwfEsxKykYciSh-20250625-130302.asc" label="teleskope_uploader_2025_public.asc"}

# File Transport

## Teleskope Uploader API

This is the preferred transport mechanism as it provides the most secure and highly available mechanism. 

In order to use this mechanism, get your uploader account URL, username and API key from teleskope. 

Example: To send a PGP encrypted active user file in CSV format

**URL**: https\://subdomain.teleskope.io/1/eai/uploader?op=user-data-sync\&format=csv\&version=v3\&encryption=pgp 

**Username:** Contact Teleskope representative for username

**API Key**: … a very long string…

- Only HTTP POST mechanism is supported. For enhanced security HTTP GET, PUT, and other operations are <u>**not**</u> supported on this system
- The API call is authenticated using HTTP Basic Auth with API Key passed as password.

## Customer provided SFTP account

The HRIS files can be staged it in **your** SFTP server. Teleskope does not provide SFTP server accounts, but we can pick up files from customer provided  SFTP server.

Teleskope file pickup service will delete the file from SFTP server on successful get.

Additional Consideration: When sending files over SFTP, the filename must be static and should not contain any variables, such as timestamps. The file extension should match the contents, e.g. .csv for CSV formatted file, .tsv for TSV formatted file. If the file is PGP encrypted, then it should have .pgp extension. E.g if the customer is sending full set of users daily in CSV format from production environment and the file is PGP encrypted then  a good filename is *all\_employees\_production.csv.pgp*

In some cases Teleskope can provide a SFTP account but we prefer to use customer provided SFTP accounts.

# Attributes/Fields to be included in the HRIS file

Employee ID

Firstname or preferred 

Lastname

Email

Job Title

Department 

Office location 

City

state

country

Hire date 

Management level 


Above list of attributes is recommended by Teleskope to get the best user experience on the platform, however we can discuss these during the HRIS Kick off call. In addition to the above we support mapping of any number of additional attributes as required. 
