Integrating PeopleSoft with ClassRanked
Overview
ClassRanked integrates with Student Information Systems (SIS) using a defined set of academic, enrollment, and user datasets for a given term.
For institutions using PeopleSoft Campus Solutions. A few options are available:
- Exporting data into our standard CSV files and establishing a recurring sync with ClassRanked's dedicated SFTP endpoint. Instructions and formats for how to do this can be found here.
- Exposing data as PeopleSoft reporting views or PSQueries, which can then be consumed by an automated process. The following guide outlines the scope of the views needed for ClassRanked course evaluations to run smoothly.
Both methods use the same required datasets and field definitions described below.
This document describes:
- How ClassRanked connects to/receives PeopleSoft data
- Which PeopleSoft data elements should be exposed,
- How those elements map to ClassRanked’s SIS data model, and
- How each field should be interpreted in practical terms.
🛑 Important
All views should be scoped to only the current active academic term, and optionally the immediately upcoming term (if it is about to begin).
Please do not include historical terms or terms scheduled far in the future.
Term Scoping (Applies to All Views)
All views described below must be filtered so that they only return data related to:
- The current active term
- Optionally, the next upcoming term. For example, a future term that has already been scheduled and is about to start.
In PeopleSoft, term status and start/end dates are typically stored at the STRM level and can be used to determine:
- Whether a term is currently active
- Whether a term is upcoming
This scoping should be applied consistently across all views, including:
- Courses
- Course sections (classes)
- Student Enrollments
- Instructor Assignments
- Student Users
- Faculty and Staff Users
Attributes (Optional but Supported)
ClassRanked supports flexible, attribute-based fields on several entities. Attributes are represented as additional columns in the corresponding views.
Attributes are optional and may be included where useful for reporting, filtering, or survey design. Length and requirements are detailed within Views where they are supported.
Supported Attribute Locations
Course Section Attributes
- May be included in the Course Section View.
- Examples:
- Instruction Mode (e.g., In Person, Online, Hybrid)
- Subterm (e.g., 8-week, 16-week)
- Location
Student Attributes
-
May be included in the Student People View.
Examples:
- Class Level
- Program
- Major
- Residency Status
Faculty/Staff Attributes
-
May be included in the Faculty & Staff People View.
Examples:
- Faculty Rank
- Appointment Type
- Department Affiliation
Attribute Notes
- Attribute values should be human-readable.
- Attributes are optional and do not need to be exhaustively populated.
- If an attribute is not applicable for a given record, the value may be left blank.
Syncing Behavior
- Based on the view, data exposed in the views are processed either as appends or overrides.
- Views that are processed as overrides are destructive. Any rows that previously existed in the ClassRanked system that do not exist in the view anymore are removed. Some views are processed in override processing style because we want to maintain the most up to date snapshot of a specific dataset. Ingesting the following views is an override action that can be destructive and should be planned as such:
- Course Sections View
- Student Enrollments View
- Instructor Assignments View
- Conditions exist on these uploads to prevent the accidental deletion of any of these entities during critical times such as when surveys are live or published.
- Views that are processed as appends are additive only. Any rows that previously existed in the ClassRanked system that do not exist in up to date view, remain in the ClassRanked system. The following Views are processed as appends:
- Student Users
- Faculty and Staff Users
- Courses
- This is likely because your institution is only sending a snapshot of the courses that exist in a given term or users that exist in a given term, as such we do not want to remove users, courses, in case they return in a later term.
Important:
If your institution prefers to generate and send files, you may proceed with that approach using the dataset definitions below.
If you would like ClassRanked to connect directly to your PeopleSoft reporting data, you will need to complete the PeopleSoft Connection Worksheet (linked below).
PeopleSoft Connection Worksheet (Read-Only Access Only)
If you choose to grant ClassRanked read-only access to your PeopleSoft reporting data, please complete the PeopleSoft Connection Worksheet.
The worksheet collects:
- Reporting database or query access details
- Network connectivity requirements
- Authentication information
- Exact view or query names for each required dataset
Download: PeopleSoft Connection Worksheet (DOCX)
Note: Please send any passwords database secrets via a separate secure channel of your team/institution's choice, not through the above form.
Required PeopleSoft Views
ClassRanked requires seven core datasets to represent academic structure, enrollments, and users.
These datasets must be made available to ClassRanked either by delivering files or by exposing read-only reporting views or queries.
These datasets can be generated from seven corresponding PeopleSoft views or PSQueries, described below.
Additional columns may be included if desired, but the minimum required fields must be present.
1. Term View
Purpose
Defines the academic term(s) used to associate all other academic and enrollment data
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Title | String (256) |
A human-readable term description (e.g., Fall 2024, Spring 2026). This value is used as the primary term identifier across all datasets. Important: Terms here represent overarching academic sessions that may encompass many smaller subterms or sessions. For system usability purposes, please pass these sessions or subterms as an attribute at the course section level. |
| Start Date | Date time | The official start date of the term. |
| End Date | Date time | The official end date of the term. |
Important Notes
- The Term Title must match exactly across all views.
- ClassRanked uses the term title to associate course sections, enrollments, and instructor assignments.
Example Row
| Term | Start Date | End Date |
|---|---|---|
| Fall 2024 | 08/26/2024 | 12/13/2024 |
2. Student User View
Purpose
Defines student user accounts used by ClassRanked.
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| First Name | String (128) | Student’s first name. |
| Last Name | String (128) | Student’s last name. |
| String (1024) | Official student email address (used as a primary identifier). | |
| School ID | String (128) | Institutional identifier (e.g., EMPLID). |
Optional Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Password | String (32) | The default password that the user will use to log in locally. |
| Attributes | String (128) |
Any number of additional columns that represent attributes for the user. The column header represents the title of the attribute and the value in each specific row is a possible value of that attribute. Example: Header: Year Possible values:
|
Notes
- Students should generally be limited to those appearing in the enrollment view for the scoped term(s).
- Additional demographic or academic attributes may be included as additional columns.
Example Row
| First Name | Last Name | School ID | Year | Campus | |
|---|---|---|---|---|---|
| Alex | Johnson | alex.johnson@university.edu | S012345 | Sophomore | San Jose |
3. Faculty & Staff User View
Purpose
Defines faculty and staff user accounts used by ClassRanked.
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| First Name | String (128) | Faculty/staff first name. |
| Last Name | String (128) | Faculty/staff last name. |
| String (1024) | Official email address (used as a primary identifier). | |
| School ID | String (128) | Institutional identifier (e.g., EMPLID) |
Optional Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Password | String (32) | The default password that the user will use to log in locally. |
| Attributes | String (128) |
Any number of additional columns that represent attributes for the user. The column header represents the title of the attribute and the value in each specific row is a possible value of that attribute. Example: Header: Tenure Possible values:
|
Notes
This view should include instructors appearing in the instructor assignment view.
- Administrative staff may also be included if desired.
Example Row
| First Name | Last Name | School ID | Tenure | Gender | |
|---|---|---|---|---|---|
| Maria | Smith | maria.smith@university.edu | F009876 | Tenure Stream | Female |
4. Course Catalog View
Purpose
Defines catalog-level courses (independent of any specific class section).
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Abbreviation | String (128) | A short, unique course identifier, typically derived from SUBJECT + CATALOG_NBR (e.g., CS 101). |
| Title | String (256) | The official catalog course title. |
| Parent Academic Unit | String (128) | The owning academic organization or department (e.g., CS, MATH, BIO). |
Human Explanation
This represents the catalog course, not an individual class offering.
For example, CS 101 exists even if it is offered in multiple terms or with multiple sections. Whereas, CS 101-01 for the 2025 Fall term exists exactly once within the 2025 Fall term.
Example Row
| Course Abbreviation | Course Title | Parent Academic Unit |
|---|---|---|
| CS 101 | Introduction to Computer Science | CS |
5. Course Section View
Purpose
Defines a specific class offering of a course within a given term.
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Title | String (256) | Descriptive title for the class section. |
| Section ID | String (128) |
A human-readable class section identifier, such as CS 101-01. Section ID needs to only be specific for the term it is part of. |
| Course ID | String (128) | Must match the Course Abbreviation from the Course Catalog View. |
| Term | String (256) | Must match the Term Title from the Term View. |
| Start Date | Date time | The begin date for the class section. |
| End Date | Date time | The end date for the class section. |
Optional Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Cross-List Code | String (32) | A common identifier used to group cross-listed classes. |
| Is Primary Course | String (8) | Indicator (e.g., X) for the primary class in a cross-list group. If this field is empty, we will assume it is not the primary course. A cross-listed course does not require a primary course. |
| Attributes | String (128) |
Any number of additional columns that represent attributes for the course section. The column header represents the title of the attribute and the value in each specific row is a possible value of that attribute. Example:
Note:
|
⚠️ Common Point of Confusion: Section ID
The Section ID is not a PeopleSoft internal identifier (such as CLASS_NBR).
âś” Correct examples:
- CS 101-01
- MATH 210-002
âś– Incorrect examples:
- 123456
- CLASS_NBR
The Section ID should reflect the student- and faculty-facing class identifier, typically constructed as:
SUBJECT + CATALOG_NBR + SECTION
Example Row
| Section ID | Title | Course ID | Term | Start Date | End Date |
|---|---|---|---|---|---|
| CS 101-01 | INTRODUCTION TO COMPUTER SCIENCE | CS 101 | Fall 2024 | 08/26/2024 | 12/13/2024 |
6. Student Enrollment View
Purpose
Associates students with the class sections in which they are enrolled.
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Academic Unit | String (128) | Must match the Section ID from the Course Section View. |
| Term | String (256) | Must match the Term Title from the Term View. |
| String (1024) | The student’s official email address. |
Enrollment Filtering
This view should include students who should receive surveys in ClassRanked. This generally matches the active enrollments; however, if your institution surveys students who have withdrawn from course sections, do not remove them from the Student Enrollment View.
Dropped, withdrawn, or waitlisted enrollment rows should be excluded unless otherwise discussed.
Example Row
| Academic Unit | Term | |
|---|---|---|
| CS 101-01 | Fall 2024 | student1@university.edu |
7. Instructor Assignment View
Purpose
Associates instructors with the class sections they are assigned to teach.
Required Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Academic Unit | String (128) | Must match the Section ID from the Course Section View. |
| Term | String (256) | Must match the Term Title from the Term View. |
| String (1024) | The instructor’s official email address. |
Optional Fields
| Field Name | Format (length) | Description |
|---|---|---|
| Role | String (128) |
Instructor role (defaults to Primary Instructor). Valid roles:
|
Example Row
| Academic Unit | Term | Role | |
|---|---|---|---|
| CS 101-01 | Fall 2024 | prof.smith@university.edu | Primary Instructor |
Summary
If PeopleSoft can provide these seven term-scoped views, ClassRanked can ingest academic, enrollment, and user data in a consistent way, keep data synchronized by term, avoid large multi-purpose “mega” extracts while still supporting them if needed, and reduce ongoing manual exports and maintenance.
If existing reporting or “mega views” are already in place, they can typically be used as-is as long as the required fields above are present.
Next Steps
- Review the required PeopleSoft datasets and field definitions above.
- Decide whether your institution will:
- Deliver files to ClassRanked, or
- Grant read-only reporting access.
- If granting read-only access, complete and return the PeopleSoft Connection Worksheet using a secure method.
- Coordinate a test extract with the ClassRanked team.
ClassRanked will validate the data structure and confirm readiness before production use.