All Collections
IT Departments
Secure File Transfer Protocol (SFTP) Configuration
Secure File Transfer Protocol (SFTP) Configuration

How to set up a Secure File Transfer Protocol (SFTP) to send student data to Knack

Jacob Robinson avatar
Written by Jacob Robinson
Updated over a week ago

Knack's platform enables the dynamic allocation of tutoring resources to specific groups of students. The mechanism in place to do so is called a program. Programs enable a defined set of Users to receive subsidized tutoring services for a defined set of courses, depending on the requirements set by the institution. Programs can be configured in a variety of ways to meet the institution's objectives:

  • Allow all students at the institution to receive free tutoring for all courses

  • Allow only students that are members of Program X to receive free tutoring

  • Allow only students that are enrolled in a specific set of courses to receive free tutoring

  • Allow only a specific set of tutors to provide tutoring that is funded by the institution

  • Many other permutations and configurations are possible

Depending on the desired scope, lists of courses, students, and/or tutors will need to be delivered to Knack on a periodic basis to enable this functionality. There may be multiple programs running on Knack at the institution and each one may need to deliver different sets of data to support the configuration of their programs.

The desired mechanism for delivering university data to Knack is SFTP. Our SFTP server provides a secure, encrypted mechanism to transfer data to Knack. Data is encrypted both in transit and at rest. Alternative approaches can be utilized if required.

Setup Process

  1. Your Knack Partner Executive will initiate communication between the provided IT contacts at the institution and Knack's engineering team to start the setup

  2. IT contacts should provide their desired public key to use for connecting to Knack's SFTP server. If it is not possible to use public-key authentication, Knack can provide a username/password combination, though public key authentication is the preferred method

  3. Knack configures the SFTP account and sends connection information to the IT contact

  4. IT contacts test the connection and integrate with any mechanism used to deliver files to the SFTP server

File Specifications

Multiple types of lists will need to be provided depending on the scope of engagement and the number of programs involved at the institution.

  • File name: Specific names to use will be provided by your Knack Partner Success Manager.

  • Format: All files must be .csv files. Additionally, we ask that you escape all .csv cells. The basic rule is if the cell value contains a comma, then the string value should be properly escaped. If a comma could be included in the cell value, the entire value should be surrounded by double quotes. Not escaping fields properly, could cause rows to be rejected by our system, which would result in a failure to properly deliver the data.

  • Headers: Include the defined headers in each file

  • Server directory: Files should be placed in the inbox directory on the SFTP server. Upon connection, inbox and outbox directories should be accessible. All files can be placed directly in the inbox directory and do not need any sub-directory organization within the inbox

  • Delivery cadence: Review with the Knack team member you are working with, since there can be variations by the program. Generally speaking, file delivery should be automated and files should be delivered on a weekly cadence. This allows us to grant the appropriate programs to users, as well as process and handle changes to files as they are delivered (e.g., after drop-add deadlines).

Course Catalog

Full course catalog for the institution. This should include all courses offered across any term. This will be the first file you deliver, which will allow for validation.

Columns

  • "Course ID" - optional - institution's unique ID for a course if available

  • "Course Number" - full course code or number

  • "Course Name" - full name of the course

Example file

school-x_catalog.csv

Course ID

Course Number

Course Name

1234

MATH 100

College Algebra

1235

BIOL 100

Introduction to Biology

1236

CHEM 100

Fundamentals of Chemistry

1237

ENGL 100

English Literature

1238

SPAN 100

Spanish I

1239

PHYS 100

Introduction to Physics

1240

PHIL 100

Introduction to Philosophy

Student List

List of eligible students for a single program. The scoping for this list will be sent via email after program details have been finalized.

Columns

  • "Student ID" - institution's unique ID for the student

  • "First Name"

  • "Last Name"

  • "Email"

Example file

school-x_program-y_students.csv

Student ID

First Name

Last Name

Email

12345678

Vincent

Chase

12345679

Johnny

Chase

12345680

Lloyd

Lee

12345681

Sloan

McQuewick

12345682

Barbara

Miller

12345683

Dana

Gordon

12345684

Adam

Davies

12345685

Jamie-Lynn

Sigler

Tutor List

List of potential tutors to invite to tutor on the platform or eligible tutors for a single program. The scoping for this list will be sent via email after program details have been finalized.

Columns

  • "Student ID" - institution's unique ID for the student

  • "First Name"

  • "Last Name"

  • "Email"

Example file

school-x_program-y_tutors.csv

Student ID

First Name

Last Name

Email

12345678

Vincent

Chase

12345679

Johnny

Chase

12345680

Lloyd

Lee

12345681

Sloan

McQuewick

12345682

Barbara

Miller

12345683

Dana

Gordon

12345684

Adam

Davies

12345685

Jamie-Lynn

Sigler

Course List

Specific courses for configuring a single program. The scoping for this list will be sent via email after program details have been finalized.

Columns

  • "Course Number" - full course code or number

  • "Course Name" - full name of the course

Example file

school-x_program-y_courses.csv

Course Number

Course Name

MATH 100

College Algebra

BIOL 100

Introduction to Biology

CHEM 100

Fundamentals of Chemistry

ENGL 100

English Literature

SPAN 100

Spanish I

PHYS 100

Introduction to Physics

PHIL 100

Introduction to Philosophy

Please click here for common FAQs about Secure File Transfer Protocol (SFTP)

Did this answer your question?