Skip to main content

Schedule Data Feeds

Updated over 4 months ago

Class Types

Class types are used to differentiate between different kinds of class sections, particularly those that may be offered in conjunction with one another (i.e., lectures and labs). These are sometimes referred to as class components or other similar values in your SIS. Stellic simply uses these basic categories to differentiate section types and supports some limited filtering based on these types as well.

Expected feed filename: class_type.csv

Samples: CSV

Field

Description

Requirement

class_type_id

Used as the foreign key to the schedule_basic.type feed data sent for each class section. This id value should correspond with the code/id for the class type in the SIS (PeopleSoft calls these the class “component”). This column can be a maximum of 30 characters in length.

Examples: “LEC”, “REC”

required

class_type_name

The label used to define the class type within the Stellic platform. This is the value that will display in dropdowns in Stellic. This column can be a maximum of 150 characters in length.

Examples: “Lecture”, “Recitation”

required

Class Delivery Mode

Class delivery mode is an optional value but is used by most SISs and should be defined in Stellic. It is required if the institution is sending delivery_mode in the schedule_basic feed. It is used in various filters within Stellic for users to search for specific class records and during the planning process.

Expected feed filename: class_delivery_mode.csv

Samples: CSV

Field

Description

Requirement

delivery_mode_id

Used as the foreign key to the schedule_basic.level feed data sent for each class section and the student_course.level feed sent for each student enrollment record. This column can be a maximum of 50 characters in length.

Examples: “HYB”, “F2F”

required

delivery_mode_name

Used to populate a dropdown within the platform (in the class search to differentiate options). This column can be a maximum of 150 characters in length.

Examples: “Hybrid”, “In Person”

required

Instructor Role

Instructor role is an optional value but is used by many SISs and should be defined in Stellic if the institution is using “reviews” in the Care module and intends to send these reviews to only the primary instructor for each section (where is_primary = TRUE). It is used within Stellic to display the name of the instructor’s role on the section.

Expected feed filename: instructor_role.csv

Samples: CSV

Field

Description

Requirement

instructor_role_id

Used as the foreign key to the instructor_role_id feed data sent for each instructor in the schedule_basic feed. This column can be a maximum of 50 characters in length.

Examples: “PI”, “TA”

required

instructor_role_name

Used to display the name associated with the instructor_role_id and applied to the section instructor in the section details in Stellic. This column can be a maximum of 150 characters in length.

Examples: “Primary Instructor”, “Teaching Assistant”

required

is_primary

For roles that are considered the primary instructor for the section, this enables functionality to be limited to instructors with this role assigned at the section. Defaults to FALSE.

Examples: ”TRUE”, “FALSE”

required if applicable

Course Section/Offering Data

Stellic recommends sending section data for at least the last 5 years as an initial data load. If student enrollments are much older than that and the institution is using section data to reflect catalog changes over time (title changes, etc.) then more historical section data may be required/advisable. Once this historical data is loaded, the regular feed needs only to include those past, current and future terms where section information is changing (Stellic assumes that past terms no longer being sent in the feed are now static).

Schedule Use-case Considerations

Class sections are used as the unit that connects courses to student enrollments. So, each section is a “version” of the course (based on the same course_code or subject plus number) offered in a given term. Student enrollments, then, are a record of a student associated with a particular section. As such, each of these values “inherit” specific data elements from the parent (course → section → enrollment record) but they may also change.

Institutions that change courses over time (often referred to as catalog versioning) may notice that the course record in Stellic is intended to function as the current version of the course. Yet, there may be values that change over time such as title, units, attributes, and course equivalencies. Stellic can read these term-based values and build your catalog versions automatically based on section data that changes over time. In such instances, these additional columns will be required.

Expected feed filename: schedule_basic.csv

Samples: CSV

Field

Description

Requirement

campus_id

The campus at which this section is taught. This value must match a value supplied in the id column of the Campus tab of the configuration sheet (a foreign key to this column).

Examples: "nyc"

required

class_type_id

Type or instructional method associated with this class section. This value must match a value supplied in the id column of the Class Type tab of the configuration sheet (a foreign key to this column).

Examples: "LEC", "Lab"

required

course_code

A concatenated combination of the subject and number from the course feed that follows your course pattern.

Examples: "MATH 428"

required

course_id

Unique identifier for the course record. This value must match a value supplied in the id column of the course feed (a foreign key to this column).

Examples: "4431", "5263"

required

end_date

The date this class section ends (often matches the term end date). Please ensure the date format is %Y-%m-%d or full year, followed by numeric month, followed by numeric day (with leading zeros as needed), all separated by hyphens.

Examples: "2021-12-22"

required

section_code

User friendly section code that may be referenced in your SIS to differentiate sections of the course offered in the same term. This value is displayed in the Stellic platform to facilitate registration and planning. This column can be a maximum of 50 characters in length.

Examples: "1-Lec"

required

section_id

Unique section ID. This can be the key value from your SIS or a unique combination of data (e.g., term code plus course/section code). This value is a foreign key to the other schedule feed data (timings and constraints) and the student enrollment data. This column can be a maximum of 50 characters in length.

Examples: "156798", "Fall2020-16759"

required

start_date

The date this class section begins (often matches the term start date). Please ensure the date format is %Y-%m-%d or full year, followed by numeric month, followed by numeric day (with leading zeros as needed), all separated by hyphens.

Examples: "2021-08-21"

required

term_name

The term associated with the class section in your SIS. Must match a valid term name (not term code; see below for 'term_code' as a separate column) from your institution's configuration sheet.

Examples: "fall"

required

year

The calendar year of the term associated with the class section record.

Examples: "2019"

required

course_topic_id

Topic id if this section covers a particular topic. This value must match a value from the course topic feed. If no id values are used in your SIS, the course_topic_name can be used instead (these two columns are mutually exclusive; if sending course_topic_id, you should not include course_topic_name, and vice versa).

Examples: "52"

required if applicable

cross_course_linked_section_id

See "linked_section_id" for comparison of functionality/data to ensure proper use. Section ID of the section that this section is linked to when the course_codes differ (e.g., CHEM 101 and CHEM 111). Used when universities want to enforce relationships like "Lab A must only be taken with Lec 1".

Examples: "2056-12798"

required if applicable

delivery_mode_id

The delivery mode associated with this class section. This value must match a value supplied in the Short Name column of the Class Delivery Mode tab of the configuration sheet (a foreign key to this column).

Examples: "ONL", "RMT", "INP"

required if applicable

enrollment_section

An indicator if this section is the primary enrollment section associated with the linked class record. For example, in a lecture/lab combination, the lecture section is often marked "TRUE" whereas the lab would be marked "FALSE." The "TRUE" value often follows the graded section.

Examples: "TRUE", "FALSE"

required if applicable

first_auto_enroll_section

Peoplesoft institutions only: The first auto-enroll section_id value that is included in the SIS record for this section (only include in this feed if included in the SIS record for that section). If the auto-enroll functionality is used by the institution, this must be included for registration to work properly (will otherwise error in API request submission). This value must match a valid value in this self-referenced feed in another record.

Examples: "431142", "2341-15473"

required if applicable

link

A unique string that is used to "tie sections together." This can only be used for two sections of the same course_code with different class_types (otherwise, for different course_code values, use the "cross_course_linked_section_id" column). Used when universities want to enforce relationships like "If you pick Lecture 1, you can only take Lab A, B, C." Should match the link relationship that exists in your SIS. Typically, either this column or the 'linked_section_id' column are included, not both. Peoplesoft institutions: This is typically where the associated class record to which this section is linked is included.

Examples: "B2"

required if applicable

linked_section_id

See "cross_course_linked_section_id" for comparison of functionality/data to ensure proper use. Section ID of the section that this section is linked to when the course_codes are the same but different class_type values (e.g., CHEM 101 "lecture" and "lab"). Used when universities want to enforce relationships like "Lab A must only be taken with Lec 1". Typically, either this column or the 'link' column are included, not both. Peoplesoft institutions: This column can be ignored (associated class value sent in the 'link' column below).

Examples: "431142", "2341-15473"

required if applicable

required

For sections that are part of a linked class record, this indicates if the student must register for this section type or if it is optional. Defaults to TRUE.

Examples: "TRUE", "FALSE"

required if applicable

second_auto_enroll_section

Peoplesoft institutions only: The second auto-enroll section_id value that is included in the SIS record for this section (only include in this feed if included in the SIS record for that section). If the auto-enroll functionality is used by the institution, this must be included for registration to work properly (will otherwise error in API request submission). This value must match a valid value in this self-referenced feed in another record.

Examples: "431142", "2341-15473"

required if applicable

sub_term

The name of the sub-term or session code associated with this class section. This must be submitted for the planner to both display session information as well as allow students to filter by session within a term. The values included here must match those defined in the Sub-Terms tab in config to properly include the order in which they will display. This value should be the display name and not a code (unless you want the code to display to users in the platform).

Examples: "Summer 1", "Sub-term 2"

required if applicable

support_permission_number

A boolean indicator noting if this section requires students to submit a permission number/code to register. When TRUE, Stellic won't restrict the students from adding sections to the planner but will present a means to submit the permission number. Only required if using Stellic for registration.

Examples: "TRUE", "FALSE"

required if applicable

teaching_location_id

This is an optional value and only used if institutions need teaching locations in addition to campus values. This becomes a secondary filter for class search for students. This value must match a value supplied in the id column of the Teaching Locations tab of the configuration sheet (a foreign key to this column).

Examples: "LA"

required if applicable

term_code

For institutions using Stellic for registration, this may be required if your SIS API requires the term code instead of term + year as parameters. This should be the term_code associated with the class section in your SIS. Must match a valid term value from your SIS.

Examples: "20235"

required if applicable

available_enrollment

Number of seats currently available for this section based on current registration (max_enrollment minus number registered at time of feed; can be updated real time through the Stellic API). Must be a numeric value.

Examples: 13

Optional

class_number

SIS identifier that is typically unique for a term and used for registration (aka, CRN). This value can optionally be displayed in the Stellic platform to facilitate registration. This column can be a maximum of 100 characters in length.

Examples: "12332"

Optional

co_req

Future Functionality: This mirrors functionality at the course level but for those records that change over time (catalog versioning). As such, this allows for term-based requisites. List of courses that are corequisites of this course and can be scheduled concurrently. Will allow students to plan sections of these courses in the same term. Multiple items should be submitted pipe-delimited. The Stellic default is to treat multiples as if an OR condition (either option is acceptable).

Examples: ["CHEM 112L"]

Optional

course_attribute_ids

List of attributes or tags associated with the course at the section level that can be used in search or toward program requirements. Used to apply a specific section enrollment to the applicable degree audit requirements (i.e., specific general education categories). This may reflect attributes that only apply to this section (as opposed to the course record) or changes in attributes over time (catalog versioning). This value is limited to 100 characters in length for each attribute. Multiple attributes are allowed and should be pipe-delimited.

Examples: ["Writing Intensive", "Humanities

Optional

course_topic_name

Topic name if this section covers a particular topic (the course code associated with this section must also be marked is_topic_course = "TRUE" in the course feed). This value is for ad hoc topic values per section if used in your SIS (This column and course_topic_id are mutually exclusive; if sending course_topic_name, you should not include course_topic_id, and vice versa).

Examples: "Diaspora"

Optional

description

The full text description at the time this section is offered. This allows Stellic to see how course descriptions change over time (often referred to as catalog versioning). This column can be any length.

Examples: "This course is designed to cover the basics of the following core..."

Optional

equivalent_course_codes

List of courses at the time this section was offered that are cross-listed in the institutional catalog (can also be taken to meet a program requirement) or may no longer be active in the institutional catalog but are to be considered to meet program requirements in program audits (i.e., due to a course number change).

This could include past courses that will be included in the student course (enrollment) feed, including transfer equivalencies. Can be submitted as the subject/number combination or course ids. Multiple items should be submitted pipe-delimited. See the 'equivalent_course_codes' column information in the course feed section above. This information included at the section level is intended to reflect changes in course equivalencies over time and be used in conjunction with equivalent courses at the catalog level (the course feed reflects the current equivalencies and may differ from what is sent with each section).

Example: "MATH-101", "MATH-101

Optional

instructor_usernames

List of usernames of instructors that teach this course. These values must match the user attribute that is passed via SSO (often a username or ID number). These values must also exist in the user feed file (which is how we link to names and other information for display in the platform). Multiple values should be pipe-delimited. This column can be left blank if instructor information is provided in the schedule_instructor feed (which also allows for specific role information to be connected to instructors).

Examples: ["saguero", "163546"]

Optional

is_hidden

An indicator if this section is to be hidden for searching within the platform Defaults to "FALSE" but can be marked "TRUE" for those sections that are used primarily for administrative enrollments (e.g., independent studies requiring prior approval). Sending hidden sections along with those that are also visible allows Stellic to connect a student's enrollment to this section (with all connected attributes, title, etc.).

Examples: "TRUE", "FALSE"

Optional

max_enrollment

Number of total seats available for this section. Must be a numeric value.

Examples: 43

Optional

max_waitlist

Maximum number of students that can be on the waitlist. Must be a numeric value.

Examples: 10

Optional

title

The full course title at the time this section is offered. This allows Stellic to see how course titles change over time (often referred to as catalog versioning).

Examples: "Introduction to Linear Algebra"

Optional

units

Units/credits for the class section. If it's a range, provide both minimum and maximum (if both are included, they should be submitted comma-delimited and be encapsulated in quotes to escape the commas). This may differ from the course record (same course code/ID) and may change over time to reflect catalog versions in addition to the offerings for the term of this specific section. This will be used for planning functions in Stellic. Must be a numeric value (float).

Examples: "3.0", "3.0,6.0"

Optional

waitlist

Number of students currently waitlisted for this section (at time of feed; can be updated real time through the Stellic API). Must be a numeric value.

Examples: 4

Optional

Timings/Meetings

Expected feed filename: schedule_timing.csv

Samples: CSV

Field

Description

Requirement

begin

Start time for this timing record (assumes the time zone of the campus at which this section is offered; linked in the Campus tab of the configuration sheet). This data should be formatted as 24 hour time values with hours and minutes (HH:MM).

Examples: "11:00"

required

course_code

A concatenated combination of the subject and number from the course feed that follows your course pattern.

Examples: "MATH 428"

required

days

List of days for this timing record. Days should be submitted using the following mapped values: U=Sunday M=Monday T=Tuesday W=Wednesday R=Thursday F=Friday S=Saturday Multiple day values should be pipe-delimited.

Examples: ["M", "W", M

required

end

End time for this timing record (assumes the time zone of the campus at which this section is offered; linked in the Campus tab of the configuration sheet). This data should be formatted as 24 hour time values with hours and minutes (HH:MM).

Examples: "13:00"

required

end_date

If timings/meetings do not repeat weekly, provide each timing's end date. Please ensure the date format is %Y-%m-%d or full year, followed by numeric month, followed by numeric day (with leading zeros as needed), all separated by hyphens.

Examples: "2021-12-22"

required

section_id

Unique section ID. Must match the section_id from the schedule feed (a foreign key to this value).

Examples: "156798", "Fall2020-16759"

required

start_date

If timings/meetings do not repeat weekly, provide each timing's start date. Bi-weekly class meetings should include a timings record for each date with a start and end date.

This information is used to provide class conflict feedback to students in the schedule planning process. Please ensure the date format is %Y-%m-%d or full year, followed by numeric month, followed by numeric day (with leading zeros as needed), all separated by hyphens.

Examples: "2021-08-21"

required

building

The building name/code where this class section meets. Will display in the Stellic platform so this value should be commonly used or referenced. This column can be a maximum of 100 characters in length.

Examples: "Donner Hall"

Optional

room

The room code where this class section meets. Will display in the Stellic platform so this value should be commonly used or referenced. This column can be a maximum of 100 characters in length.

Examples: "R-113"

Optional

Section Instructors

Optional—It is possible for a section to have more than one advisor and Stellic uses the word instructor to refer to anyone associated with the section. Institutions can also restrict by “instructor type” (e.g., not including teaching assistants) depending on what is recorded in your SIS. Add multiple rows to associate a single section to multiple instructors. This feed is only required if instructor roles are included to manage specific functions in Stellic that may be limited to a primary instructor, etc., such as the use of Reviews with the Stellic Care module. Use of this feed also requires the submission of the instructor_role configuration feed.

Expected feed filename: schedule_instructor.csv

Samples: CSV

Field

Description

Requirement

instructor_role_id

Role/designation for this instructor. This value must match the “instructor_role_id” value on the instructor_role feed provided (the foreign key for that record).

Examples: “PI”

required

instructor_username

Unique username for the instructor. These values must match the user attribute that is passed via SSO (often a username or ID number). These values must also exist in the user feed file (which is how we link to names and other information for display in the platform).

Examples: “57568”

required

section_id

Unique section ID. Must match the section_id from the schedule feed (a foreign key to this value).

Examples: “156798”, “Fall2020-16759”

required

Schedule/Registration Constraints

Optional—a separate csv feed file is only necessary if your institution needs to specify specific registration restrictions for sections. This feed is typically added later in the implementation process and is often needed to make registration function properly for specific institutional contexts. It is not part of the typical core set of data files sent in initial onboarding but can be sent at any time.

In addition, this optional feed can be used to send section-based notes. To do so, the ‘section_id’ is required along with a ‘constraint_type’ value of “RAW” so Stellic knows it is only a note and not a separate constraint. The note text can then be included in the ‘note’ column in the feed.

This feed can be used to load multiple values per section so long as the section_id, constraint_type, and action values differ (the three of these are used as a unique key in Stellic). For example, a section can have both “disallow_register” and “reserve_seats” action that are connected to a constraint_type of “program” but Stellic is unable to support two records with a “disallow_registration” action with a type of “program” (instead, all program values should be aggregated in the data column).

All of the values included in the data column will be used to define the list of student criteria for matching based on the operator (will connect all values as OR). Multiple values being sent should be pipe-delimited if used.

Expected feed filename: schedule_constraint.csv

Samples: CSV

Field

Description

Requirement

action

A value that indicates for this particular constraint how the section should be displayed to students whose data does not match constraint eligibility. This value must be one of the following: "hide" (will be excluded from visibility in schedule search results to students who are ineligible based on the criteria; will display as normal for selection to eligible students meeting the constraint criteria) "warn" (will show and allow the student to add the section to their plan but will display a warning to them) "disallow_register" (will show the section but not allow the student to add the section to their plan without administrative override). "disallow_drop" (will prevent a student with this designation from dropping the section once added without administrative override). "reserved_seats" (used to indicate that this section has a block of reserved seats for the students meeting the criteria in the record) "show" (only for use with "raw" constraint_type values for section notes; no constraint will be enforced)

required

constraint_type

The type of constraint associated with this record. Will include a value of "raw' for only notes (please see above for explanation of this option). Possible Values: "campus", "school", "department", "class_level", "enrollment_level", "concentration", "program", "student_tag", "raw"

required

operator

A value that indicates how the action will be compared to the student data identified in the "constraint_type" and "data" values for the record (like a boolean and/or). This value must either be: "eq" (those students matching the constraint_type/data criteria) "neq" (those students that do not match the constraint_type/data criteria) "info" (only for use with "raw" constraint_type values for section notes; no constraint will be enforced) E.g., an "eq" value with "disallow_register" action would indicate the studentset that should be prevented from registering for the identified section.

required

section_constraint_id

Unique identifier for this specific restriction/constraint record. Must be unique so it can also be used within APIs for creation/update/delete by record. This column can be a maximum of 50 characters in length.

Examples: "1234-001357-xyz", "Fall2020-16759-23567"

required

section_id

Unique section ID. Must match the section_id from the schedule feed (a foreign key to this value). This column can be a maximum of 50 characters in length.

Examples: "156798", "Fall2020-16759"

required

data

The data associated with the constraint type that allows Stellic to compare against the particular student data element to evaluate the constraint. Multiple values are possible when multiple values of the same constraint_type are applicable to a single section (only one row is allowed for each constraint_type per section_id). If multiple values are supplied, they should be pipe-delimited.

Examples: ["MATH", "HIST", "MATH"]

required if applicable

reserve_capacity

An integer value representing the number of reserve seats available to those students who meet the criteria included in the other data elements in the restriction record. Only required for the "reserve_seats" action type.

Examples: "10", "15"

required if applicable

start_date

The date this reserve seat restriction begins for this section. Only required for the "reserved_seats" action type. The start date is when this reserve capacity record goes into effect. A blank record will indicate that the restriction is applied for the duration of the term. Please ensure the date format is %Y-%m-%d or full year, followed by numeric month, followed by numeric day (with leading zeros as needed), all separated by hyphens.

Examples: "2021-08-21"

required if applicable

end_date

The date this reserve seat restriction end for this section. Only required for the "reserve_seats" action type. A blank record will be treated like the reserve seat restriction is active through the end of the term. Please ensure the date format is %Y-%m-%d or full year, followed by numeric month, followed by numeric day (with leading zeros as needed), all separated by hyphens.

Examples: "2021-12-22"

Optional

note

Constraint information to display along with the course section. This field should be used to assist with planning for both students and administrative users. This value is limited to 3500 characters in length (and will wrap as below if beyond a certain length): The note value is very important to indicate what restriction may exist on a class section indicating why a section is restricted or allowed for specific users and while the constraint will continue to operate in its absence, it will not indicate the reason for the section restriction to users without it. Inclusion is strongly recommended.

Examples: "Available to CH1 cohort students only"

Optional

rqrmnt_group

Peoplesoft institutions only: The requirement group code linked to the reserved seat record. This is only required when the "action" value is "reserved_seats." Stellic can import these enrollment requirement groups (same tables as pre- and co-requisites) directly from the PS requirement group tables (list provided by Stellic during the integration process).

Optional

Did this answer your question?