Get Published Articulations by Course
Gets published articulations for a course, grouped by the agreements they were published on, for a given sending institution, receiving institution, and academic year.
Api
- Route
/articulation/api/Agreements/Articulations/institution/{courseInstitutionParentId}/course/{courseIdentifierParentId}/for/{academicYearId}- Method
- POST
- Key Required
- Yes
- Common Response
- Yes
- Response Type
- Validated Response of Get Published Articulations Response
Route Parameters
- courseInstitutionParentId (int)
- The institution that owns the requested course (from: Get Institutions)
- courseIdentifierParentId (int)
- The course identifier parent id to retrieve articulations for (this can be found in the model returned from Get Agreement)
- academicYearId (int)
- The academic year id (from: Get Academic Years)
Request Body
- agreementInstitutionParentIds (array of int, required)
- The institution ids on the opposite side of
courseInstitutionParentIdto search for published agreements against. A maximum of 5 IDs may be submitted per request. - asCourseType (enum, optional)
- The course type from [Sending,Receiving] indicating whether
courseInstitutionParentId/courseIdentifierParentIdrepresent the sending or receiving side of the requested agreements. When omitted, articulations are matched against the course as both a sending and a receiving course.
Curl Example
curl -X 'POST' \
'https://prod.assistng.org/articulation/api/Agreements/Articulations/institution/7/course/289392/for/74' \
-H 'accept: application/json' \
-H 'API-Key':'<redacted>' \
-H 'Content-Type: application/json' \
-d '{
"agreementInstitutionParentIds": [110],
"asCourseType": "Receiving"
}'
- courseInstitutionParentId = 7 (University of California, San Diego)
- courseIdentifierParentId = 289392 (ANTH 1 from UCSD)
- academicYearId = 74 (2023-2024)
- agreementInstitutionParentIds = [110] (Allan Hancock College)
- asCourseType = Receiving (meaning the course belongs to the receiving institution, UCSD)
- API-Key =
<redacted>(You’ll need to provide your own key.)
Sample Response
{
"result": {
"course": {
"courseIdentifierParentId": 289392,
"courseParentId": 289300,
"courseTitle": "Introduction to Culture",
"courseNumber": "1",
"prefix": "ANTH",
"prefixParentId": 10683,
"prefixDescription": "Anthropology",
"departmentParentId": 681,
"department": "Anthropology",
"begin": "F2023",
"beginDate": "2023-08-01T00:00:00",
"beginTermId": 241,
"end": "",
"endDate": null,
"endTermId": null,
"minUnits": 4.0,
"maxUnits": 4.0,
"isTerminated": false,
"hasOutline": false,
"isCsuTransferable": true,
"isUcTransferable": true,
"crosslistedCourses": [],
"pathways": []
},
"articulationsByAgreements": [
{
"articulation": {
"type": "Course",
"course": {
"courseIdentifierParentId": 289392,
"courseTitle": "Introduction to Culture",
"courseNumber": "1",
"prefix": "ANTH",
"prefixParentId": 10683,
"prefixDescription": "Anthropology",
"departmentParentId": 681,
"department": "Anthropology",
"begin": "F2023",
"end": "",
"beginDate": null,
"beginTermId": null,
"endDate": null,
"endTermId": null,
"minUnits": 4.0,
"maxUnits": 4.0,
"isTerminated": false,
"hasOutline": false,
"crossListedCourses": null,
"pathways": null
},
"visibleCrossListedCourses": [],
"courseAttributes": [],
"sharedArticulations": null,
"id": null,
"lastSignOff": null,
"receivingInstitutionParentId": 7,
"sendingInstitutionParentId": 110,
"academicYearId": 74,
"notes": [],
"isDraft": false,
"isHiddenFromPrefixAndDepartment": false,
"isHiddenFromMajor": false,
"sendingArticulation": {
"id": "00000000-0000-0000-0000-000000000000",
"noArticulationReasonId": null,
"noArticulationReason": null,
"deniedCourses": [],
"items": [
{
"courseConjunction": "And",
"items": [
{
"lastApproval": null,
"visibleCrossListedCourses": [],
"requisites": [],
"attributes": [],
"courseIdentifierParentId": 372962,
"courseTitle": "Introduction to Accounting",
"courseNumber": "105x",
"prefix": "ACCT",
"prefixParentId": 5762,
"prefixDescription": "Accounting",
"departmentParentId": 51,
"department": "Accounting",
"begin": "W2024",
"end": "",
"beginDate": null,
"beginTermId": null,
"endDate": null,
"endTermId": null,
"minUnits": 3.0,
"maxUnits": 3.0,
"isTerminated": false,
"hasOutline": false,
"crossListedCourses": null,
"pathways": null,
"publishedCourseIdentifierYearTermId": 292,
"id": "00000000-0000-0000-0000-000000000000",
"position": 0,
"type": "Course"
}
],
"attributes": [],
"id": "00000000-0000-0000-0000-000000000000",
"sendingArticulationId": "00000000-0000-0000-0000-000000000000",
"position": 0,
"type": "CourseGroup"
}
],
"courseGroupConjunctions": [],
"type": "SendingArticulation",
"attributes": []
},
"templateOverrides": [],
"attributes": [],
"receivingAttributes": []
},
"agreements": [
{
"key": "74/110/to/7/Department/13221",
"name": "Anthropology",
"type": "Department",
"academicYearId": 74,
"receivingInstitutionId": 7,
"sendingInstitutionId": 110
}
]
}
]
},
"validationFailure": null,
"isSuccessful": true
}Get Published Articulations Response Model
- course (Course)
- The requested course, populated with its metadata as of the requested academic year.
nullif no articulations matched the requested filters. - articulationsByAgreements (array of Articulations By Agreements Group)
- One entry per distinct articulation found on the course, grouped across all the published agreements it appears on
Articulations By Agreements Group Model
- articulation (Base Articulation Model)
- The distinct articulation instance shared by the agreements below
- agreements (array of Published Agreement)
- The published agreements on which this articulation appears
Published Agreement Model
- key (string)
- The agreement key that can be sent back to Get Agreement to get the full agreement
- name (string)
- The name of the agreement, which could be the major name, prefix code, department name, or general education area, depending on the type of agreement
- type (enum)
- The type of agreement from [Prefix, Department, Major, GeneralEducation, AllDepartments, AllPrefixes, AllMajors, AllGeneralEducation, SendingDepartment, SendingPrefix, AllSendingDepartments, AllSendingPrefixes]
- academicYearId (int)
- The academic year id of the agreement
- receivingInstitutionId (int)
- The receiving institution id of the agreement
- sendingInstitutionId (int)
- The sending institution id of the agreement