Coursedog

Submit a Ticket My Tickets
Welcome
Login  Sign up

Colleague Ethos - Integration & Extension Setup

Table of Contents

Overview
(1) Credentials
(2) Integration Setup
(3) Ethos Extension Setup

Supported Areas
Release Note Updates
Related Articles


Overview

  • The following tasks must be accomplished in both a production and a non-production Colleague environment.

  • These environments will be used to integrate with your Coursedog production and staging environment respectively.


(1) Credentials

Account

  1. Create a person record for the API user

  2. Create an operator record for the API user

  3. Create a DMI user for the API user

  4. Define an organizational role for the API user

  5. Assign permissions to the API user organizational role (see required permissions below)

  6. Assign the organizational role to the API user

  7. Clear the Colleague WebAPI cache


Permissions

  • CREATE.UPDATE.COURSE

  • UPDATE.INSTRUCTIONAL.EVENT

  • DELETE.INSTRUCTIONAL.EVENT

  • VIEW.EDUCATIONAL.INSTITUTION

  • CREATE.UPDATE.SECTION

  • VIEW.ANY.PERSON

  • UPDATE.SECTION.INSTRUCTORS

  • DELETE.SECTION.INSTRUCTORS

  • VIEW.INSTRUCTORS

  • VIEW.PERSON.INFORMATION

  • VIEW.STUDENT.INFORMATION

  • VIEW.STUDENT.ACADEMIC.PROGRAM

  • VIEW.STUDENT.ACADEMIC.CREDENTIALS

  • VIEW.STUDENT.TRANSCRIPT.GRADES

  • VIEW.REGISTRATIONS

  • VIEW.ANY.ADVISEE


Please note: An API user does not need special permission to retrieve (GET) resources that provide non-sensitive data such as validation tables and code files and are not listed.


(2) Integration Setup

Ethos Integration

  1. Within Ethos Integration, select the Applications tab

  2. Select Create New App: Manually

    1. Check Configure REST API proxy, select Continue

    2. Application name: Coursedog

    3. Description: Coursedog integration application

    4. Select Next

    5. Select Add Source Application

      1. Select your Colleague WebAPI application (name will vary from school to school)

      2. Enter the Colleague username and password as created.

      3. Select Add

    6. Select Skip in Subscriptions tab

    7. Copy generated API Key (this needs to be securely sent to Coursedog)

  3. [Optional, but recommended] After creating the Coursedog application, you have the option to add IP restrictions to the generated API key.

    1. From the Coursedog application, and the API Keys tab, select the edit icon to the right of the API Key.

    2. Check Set API key to have IP address restriction

    3. Copy the environment respective IP addresses separated by commas

    4. Select Save

Non-production

89.187.178.178/32

18.219.207.201/32

18.218.30.254/32

3.23.218.154/32

18.190.119.221/32

                        Production

89.187.178.178/32

18.190.84.87/32

3.22.31.120/32

  1. From the Colleague WebAPI application (not the Coursedog application), select the Owned Resources tab.

  1. Select Add Resources → Check Add A Custom Resource, select Next

  2. Resource name: add first resource in list below

  3. URI Override: leave empty

  4. QAPI URI Override: leave empty

  5. Select Add

  6. Repeat for all resources in list below:

    1. programs

    2. grades

    3. query-student-ids

    4. academic-history

    5. student-programs

    6. course-requisites

(3) Ethos Extension Setup

How to

EAEE

  • Colleague Ethos API LookUp: Enter resource name. Resource name is located in parentheses for each extension. For example, “Departments (educational-institution-units). The educational-institution-units is the lookup.

  • You will need to create a record for the first time, select Add when prompted.

  • Type “…” and select Ok to view existing records.


EAEV - Ethos API Extended Versions

  • Description: Extend CD

  • Version Number: leave empty

  • Version Status: R Released


Departments (educational-institution-units)

Data Element

Property

Read only

Path

Special notes

DEPTS.TYPE

deptsType

Yes

/


DEPTS.ACTIVE.FLAG

deptsActiveFlag

Yes

/



Professors Meta (section-instructors)

Data Element

Property

Read only

Path

Special notes

CSF.TEACHING.ARRANGEMENT

csfTeachingArrangement

No

/


CSF.START.DATE

csfStartDate

No

/


CSF.END.DATE

csfEndDate

No

/



Instructors (instructors)

Data Element

Property

Read only

Path

Special notes

FAC.FIRST.NAME

facFirstName

Yes

/


FAC.LAST.NAME

facLastName

Yes

/


PERSON.EMAIL.ADDRESSES

personEmailAddresses

Yes

/

Yes

FACULTY.ID

facultyId

Yes

/


FAC.SPECIAL.STATUS

facSpecialStatus

Yes

/


PERSON.EMAIL.TYPES

personEmailTypes

Yes

/

Yes

Special Notes

PERSON.EMAIL.ADDRESSES & PERSON.EMAIL.TYPES

If multiple email records are available per faculty member, a restriction should be set so that only ONE value is shared via the integration. This will preferably be their institutional email address.


To apply:

From EAEE → EAEV → EAAE

  • When: PERSON.EMAIL.TYPES

  • Oper: EQ Equal

  • Value: Eg: INS (school specific email type)


Terms (academic-periods)

Data Element

Property

Read only

Path

Special notes

TERM.ADD.START.DATE

termAddStartDate

Yes

/


TERM.ADD.END.DATE

termAddEndDate

Yes

/


TERM.DROP.START.DATE

termDropStartDate

Yes

/


TERM.DROP.END.DATE

termDropEndDate

Yes

/


TERM.DROP.GRADE.REQD.DATE

termDropGradeReqdDate

Yes

/


TERM.PREREG.START.DATE

termPreregStartDate

Yes

/


TERM.PREREG.END.DATE

termPreregEndDate

Yes

/


TERM.REG.END.DATE

termRegEndDate

Yes

/


TERM.REG.START.DATE

termRegStartDate

Yes

/


TERM.CENSUS.DATES

termCensusDates

Yes

/







Section Relationships (section-crosslists)

Data Element

Property

Read only

Path

Special notes

COURSE.SEC.XLISTS.ID

courseSecXlistsId

Yes

/


CSXL.PRIM.SEC.MNG.OVRDE.FLAG

csxlPrimSecMngOvrdeFlag


No


/



Sections (sections)

Data Element

Property

Read only

Path

Special notes

SEC.BILLING.PERIOD.TYPE

secBillingPeriodType

No

/


SEC.ATTEND.TRACKING.TYPE

secAttendTrackingType

No

/


SEC.USER2

secUser2

No

/


SEC.FUNDING.ACCTG.METHOD

secFundingAcctgMethod

No

/


SEC.OVR.ADD.START.DATE

secOvrAddStartDate

No

/


SEC.OVR.ADD.END.DATE

secOvrAddEndDate

No

/


SEC.OVR.DROP.START.DATE

secOvrDropStartDate

No

/


SEC.OVR.DROP.END.DATE

secOvrDropEndDate

No

/


SEC.OVR.DROP.GR.REQD.DATE

secOvrDropGrReqDate

No

/


SEC.WAITLIST.MAX

waitlistMaximum

No

/waitlist


SEC.ALLOW.WAITLIST.FLAG

eligible

No

/waitlist

Yes

SEC.OVR.PREREG.START.DATE

secOvrPreregStartDate

No

/


SEC.OVR.PREREG.END.DATE

secOvrPreregEndDate

No

/


SEC.OVR.REG.START.DATE

secOvrRegStartDate

No

/


SEC.OVR.REG.END.DATE

secOvrRegEndDate

No

/


SEC.ACTIVE.STUDENT.COUNT

secActiveStudentCount

Yes

/


SEC.INSTR.METHODS

id

No

/loadDetails[]

Yes

SEC.LOAD

secLoad

No

/loadDetails[]


SEC.CONTACT.HOURS

secContactHours

No

/loadDetails[]


SEC.CONTACT.MEASURES

secContactMeasures

No

/loadDetails[]

Yes

SEC.SCHED.TYPE

secSchedType

No

/


SEC.COURSE.TYPES

id

No

/courseCategories[]

Yes

SEC.REG.RESTRICTIONS

secRegRestrictions

No

/regRestrictions[]


SEC.OTHER.RESTRICTIONS

secOtherRestrictions

No

/otherRestrictions[]


SEC.TOPIC.CODE

secTopicCode

No

/


SEC.MIN.NO.COREQ.SECS

secMinNoCoreqSecs

Yes

/


SEC.COREQ.SECS

secCoreqSecs

Yes

/coReqs[]


CSF.START.DATE

csfStartDate

Yes

/instructors[]

Yes

CSF.END.DATE

csfEndDate

Yes

/instructors[]

Yes

CSF.FACULTY

csfFaculty

Yes

/instructors[]/instructor

Yes

CSF.INSTR.METHOD

id

Yes

/instructors[]/instructionalMethod

Yes

CSF.TEACHING.ARRANGEMENT

csfTeachingArrangement

Yes

/instructors[]

Yes

SEC.CLOCK.HOURSsecClockHoursNo/loadDetails[]
SEC.COMMENTSsecComments[]No/comments
SEC.FACULTY.CONSENT.FLAG
secFacultyConsentFlag
No/

SEC.PETITION.REQD.FLAG

secPetitionReqdFlag

No/
SEC.MIN.ENROLL

secMinEnroll

No/

Special Notes

From EAEE → EAEV → EAAE

SEC.ALLOW.WAITLIST.FLAG

  • Translation type: E Enumerate

  • Enumeration Table

    • Y = eligible

    • N = notEligible

SEC.INSTR.METHODS

  • Translation type: G GUIDs

  • Source: INSTR.METHODS.ID

SEC.COURSE.TYPES

  • Translation type: G GUIDs

  • Source: VAL.INTERNAL.CODE

SEC.CONTACT.MEASURES

  • Translation type: X External

  • Source: VAL.ACTION.CODE.3

CSF.START.DATE, CSF.END.DATE, CSF.FACULTY, CSF.INSTR.METHOD, CSF.TEACHING.ARRANGEMENT

  • Using: SEC.FACULTY

CSF.INSTR.METHOD

  • Translation type: G GUIDs

  • Source: INSTR.METHODS.ID


Courses (courses)

Data Element

Property

Read only

Path

Special notes

CRS.NO.WEEKS

length

No

/


CRS.ALLOW.WAITLIST.FLAG

crsAllowWaitlistFlag

No

/


CRS.ATTEND.TRACKING.TYPE

crsAttendTrackingType

Yes

/


CRS.SESSION.CYCLE

crsSessionCycle

No

/


CRS.YEARLY.CYCLE

crsYearlyCycle

No

/


CRS.ALLOW.AUDIT.FLAG

crsAllowAuditFlag

No

/


CRS.ALLOW.PASS.NOPASS.FLAG

crsAllowPassNopassFlag

No

/


CRS.COUNT.RETAKE.CRED.FLAG

crsCountRetakeCredFlag

No

/


CRS.CAPACITY

crsCapacity

No

/


CRS.SCHED.CAPACITY

crsSchedCapacity

No

/


CRS.FACULTY.CONSENT.FLAG

crsFacultyConsentFlag

No

/


CRS.ONLY.PASS.NOPASS.FLAG

crsOnlyPassNopassFlag

No

/


CRS.REG.RETAKE.POLICY

crsRegRetakePolicy

No

/


CRS.WAITLIST.NO.DAYS

crsWaitlistNoDays

No

/


CRS.WAITLIST.RATING

crsWaitlistRating

No

/


CRS.WAITLIST.MULT.SECT.FLAG

crsWaitlistMultSectFlag

No

/


CRS.STATUS

crsStatus

Yes

/statusDetails[]


CRS.STATUS.DATE

crsStatusDate

Yes

/statusDetails[]


CRS.APPROVAL.DATE

crsApprovalDate

Yes

/statusDetails[]


CRS.APPROVAL.IDS

crsApprovalIds

Yes

/statusDetails[]


CRS.APPROVAL.AGENCY.IDS

crsApprovalAgencyIds

Yes

/statusDetails[]


CRS.INSTR.METHODS

id

No

/loadDetails[]

Yes

CRS.LOAD

crsLoad

No

/loadDetails[]


CRS.LOCATIONS

id

No

/sites[]

Yes

CRS.EQUATE.CODES

id

Yes

/courseEquivalenciesCodes[]

Yes

CEC.COURSES

cecCourses

Yes

/courseEquivalencies[]


CRS.CLOCK.HOURS
crsClockHoursNo/loadDetails[]

CRS.MIN.ENROLL

crsMinEnrollNo
/
CRS.REG.RESTRICTIONS
crsRegRestrictions
No/regRestrictions[]

CRS.OTHER.RESTRICTIONS
crsOtherRestrictions
No/otherRestrictions[]

Special Notes

From EAEE → EAEV → EAAE

CRS.INSTR.METHODS

  • Translation type: G GUIDs

  • Source: INSTR.METHODS.ID

CRS.EQUATE.CODES

  • Translation type: G GUIDs

  • Source: COURSE.EQUATE.CODES.ID

CRS.LOCATIONS

  • Translation type: G GUIDs

  • Source: LOCATIONS.ID


Academic Programs (academic-programs)

Data Element

Property

Read only

Path

Special notes

ACPG.ALLOW.GRADUATION.FLAG

acpgAllowGraduationFlag

Yes

/


ACPG.CREATE.APPLICATION.FLAG

acpgCreateApplicationFlag

Yes

/


ACPG.TYPES

acpgTypes

Yes

/types[]


ACPG.STATUS

acpgStatus

Yes

/statusDetails[]


ACPG.STATUS.DATE

acpgStatusDate

Yes

/statusDetails[]


ACPG.CATALOGS

acpgCatalogs

Yes

/catalog[]


ACPG.GRADE.SCHEME

acpgGradeScheme

Yes

/


ACPG.CMPL.MONTHS

acpgCmplMonths

Yes

/


ACPG.APPROVAL.AGENCY.IDS

acpgApprovalAgencyIds

Yes

/statusDetails[]


ACPG.APPROVAL.DATES

acpgApprovalDates

Yes

/statusDetails[]


ACPG.CIP

acpgCip

Yes

/


Meeting Time (instructional-events)

Data Element

Property

Read only

Path

Special notes

CSM.APPROVED.ROOM.CONFLICT

csmApprovedRoomConflict

No

/


CSM.COMMON.ROOM.GROUP

csmCommonRoomGroup

No

/



Supported Areas

The following data tables are for information purposes only and provide a high-level overview of the supported integrations. Please note, there may be individual field limitations to objects and supported operations. 

Coursedog Area

Source Entity

Object

Operations

Course

courses

COURSES

READ, CREATE, UPDATE

Instructional events

instructional-events

COURSE.SEC.MEETING

READ, CREATE, UPDATE, DELETE

Academic level

academic-levels

ACAD.LEVELS

READ

Course level

course-levels

COURSE.LEVELS

READ

Course credit

credit-categories

CRED.TYPES

READ

Course titles

course-title-types

INTG.CRS.TITLE.TYPES

READ

Course topics

course-topics

TOPIC.CODES

READ

Instructional method

instructional-methods

INSTR.METHODS

READ

Course category

course-categories

COURSE.TYPES

READ

Course status

course-statuses

COURSE.STATUSES

READ

Departments

educational-institution-units

SCHOOLS,

DEPTS,

DIVISIONS

READ

Grade scheme

grade-schemes

GRADE.SCHEMES

READ

Subject

subjects

SUBJECTS

READ

Section

sections

COURSE.SECTIONS

READ, CREATE, UPDATE

Crosslist

section-crosslists

COURSE.SEC.XLISTS

READ, CREATE, UPDATE, DELETE

Term

academic-periods

TERMS

READ

Academic Levels

academic-levels

ACAD.LEVELS

READ

Charge assessment

charge-assessment-methods

BILLING.METHODS

READ

Section title type

section-title-types

INTG.SEC.TITLE.TYPES

READ

Section description

section-description-types

INTG.SEC.DESC.TYPES

READ

Location

sites

LOCATIONS

READ

Section status

section-statuses

SECTION.STATUSES

READ

Building

buildings

BUILDINGS

READ

Room

rooms

ROOMS

READ

Room characteristics

room-characteristics

ROOM.CHARACTERISTICS

READ

Person

persons

PERSON

READ

Section instructors

section-instructors

COURSE.SEC.FACULTY

READ, CREATE, UPDATE, DELETE

Instructors

instructors

FACULTY

READ

Academic programs

programs

ACAD.PROGRAMS

READ

Administrative Instructional Methods

administrative-instructional-methods

INSTR.METHODS

READ

Grades

grades

GRADE.SCHEMES

READ

Students

query-student-ids



students

STUDENTS

READ


Student Academic History

academic-history

STUDENT.ACAD.CRED

READ

Student Evaluation

students

DA.EVAL file

READ

Programs

programs

ACAD.PROGRAMS

READ

Program Requirements

programs

ACAD.PROGRAM.REQMTS

READ

Course Prerequisites

course-requisites

CRS.REQS

READ



Related Articles

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.