LinkedIn Learning Hub SFTP Configuration Guide

What this Document Tells You

The following steps outline the LinkedIn Learning Hub SFTP configuration process:

learning-hub-sftp-configuration-steps

Overview

This document offers a step-by-step guide on how to upload external learning data from an LMS or Content Partner to LinkedIn Learning Hub. It contains instructions for the following processes:

  • How to create a new SFTP user
  • How to connect to the SFTP server

Benefits

The LinkedIn Learning Hub integration ingests content from LMS-hosted resources (e.g., assignments, courses, events, and so on) and Content Partners into LinkedIn Learning Hub, driving engagement and offering learners a singular, intuitive platform to discover all relevant content for their learning needs.

SFTP Details

The LinkedIn Learning SFTP server hostname and port are:

  • SFTP server hostname: sftp.linkedin.com
  • SFTP server ports: 2705 and 22

The external IPs that the customer uses in their allow list to establish a SFTP handshake with LinkedIn Learning Hub are:

  • 108.174.5.95
  • 108.174.2.53

Configure a New SFTP User

To set up a new SFTP user in LinkedIn Learning Hub, take the following steps:

  1. Create public-private key pairs by running the following command: ssh-keygen -t rsa

    This action creates a private key (that does not end with .pub) and a public key (that ends with .pub).

  2. After you log in, if you are not already in the Admin screen, click Go to Admin, then select Me > Authenticate.

    learning-hub-authenticate-navigation-screen

  3. In the left-hand navigation menu, select Automate user management, then expand the Create SFTP Users panel.

    learning-hub-add-new-sftp-user-screen

  4. Click Add user.

  5. In the Add User screen, enter the data in the appropriate fields and click Create user.

    learning-hub-add-sftp-data-screen

  • Make sure your username is unique and does not have any spaces or special characters.

  • Copy and paste your SSH key into the Public key box. It should start with ssh-rsa or ssh-dss.

Congratulations! You have added a new SFTP user to your LinkedIn Learning Hub integration.

learning-hub-add-sftp-user-screen

Upload Data via SFTP

To complete the transfer of LMS data or Content Partner data to the LinkedIn Learning Hub endpoint, take the following steps:

  1. To connect to the SFTP server in PROD, use the following command (replace ~/.ssh/<my_private_key> with your private key, and sftp_username with the username you created in the previous step):

    sftp -i ~/.ssh/<my_private_key> -P 2705 <sftp_username>@sftp.linkedin.com

  2. Create a new directory with the current timestamp to upload a set of files. Make note of the following conditions:

    • The directory structure to which you upload LMS snapshot data should consist of the following format: /li-lls-lxp-lms-<integrationInstanceId>/snapshot/<timestamp>/<filename>.csv

    • LinkedIn Learning Hub provisions the integrationInstanceId.

    • The LinkedIn Learning Technical Consulting team converts the CSV data to the standardized format.

    • The timestamp directory name should be in milliseconds since epoch.

    • For a single upload containing a set of files, the timestamp should match. Upload all the files to the same timestamp directory. For example:

    [timestamp1234]/content.csv

    [timestamp1234>]/progress.csv

    [timestamp1234]/assignment.csv

    • Example input and output commands:

    sftp -i ~/.ssh/test_private_key -P 2705 testuser@sftp.linkedin.com

    Connected to sftp.linkedin.com.

    sftp> put content.csv /li-lls-lxp-lms-12345/snapshot/1612565824000/content.csv sftp> put progress.csv /li-lls-lxp-lms-12345/snapshot/1612565824000/progress.csv sftp> put assignment.csv /li-lls-lxp-lms-12345/snapshot/1612565824000/assignment.csv

  3. Use the following directory structure format to upload Content Partner Snapshot Data :

    /li-lls-lxp-thirdparty-<integrationInstanceId>/snapshot/<timestamp>/<filename>.csv

    This format assumes the customer uploads Partner Content by bypassing the LMS.

    Note

    Refer to "point A" (above) to see what each value means.

  4. To verify the data has been correctly uploaded, exit from SFTP and reconnect to the SFTP server.

  5. Fetch the file to ensure you can download it.

    sftp -i ~/.ssh/test_private_key -P 2705 testuser@sftp.linkedin.com Connected to sftp.linkedin.com.

    sftp> get content.csv /li-lls-lxp-thirdparty-12345/snapshot/1612565824000/content.csv ./download/content.csv

LinkedIn’s Privacy and Data Security Policy

https://www.linkedin.com/legal/privacy-policy

LinkedIn Security Contacts

If you have any security questions or you would like to report a security issue, write to us at security@linkedin.com.

Back to Top