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
Your Knack Partner Executive will initiate communication between the provided IT contacts at the institution and Knack's engineering team to start the setup
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
Knack configures the SFTP account and sends connection information to the IT contact
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
andoutbox
directories should be accessible. All files can be placed directly in theinbox
directory and do not need any sub-directory organization within theinbox
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 | |
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 | |
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)