Dartmouth API Developer Portal
Student Housing-Room Assignments API
Supports posting of student housing room assignments to the sis (Banner).
Rating
Attribute | Value |
---|---|
Highly Available | No |
Cache Refresh Interval | N/A |
Filtering | N/A |
Required Scopes
Scope | Description |
---|---|
urn:dartmouth:student_housing.room_assignments:write | This scope is required to post room assignments. Authorization of this scope is granted by the Student Affairs Office. |
Request
POST /api/student_housing/room_assignments
Required Headers
Authorization: Bearer {jwt}
Parameters
Parameter Name | Type | Description | Valid values | Required |
---|
(none)
Returns
Status Code | Description |
---|---|
202 | The POST request has been accepted and has been handed off to the background processor |
Sample Request
https://api.dartmouth.edu/api/student_housing/room_assignments
Sample Payload
{
"dartid": "35022g",
"term_code": "201909",
"bookings": [
{
"building_id": "GILE",
"room_number": "401",
"room_rate_id": "UINT",
"room_assignment_type_id": "AC",
"begin_date": "2019-09-03T00:00:00",
"end_date": "2019-09-14T05:00:00Z",
"assignment_date": "2019-09-14T05:00:00Z",
"assignment_change_date": "2019-09-13T05:00:00Z"
}
]
}
Sample Return
Location header:
/api/tasks/5deeb1c608a94008f54748b2
Body:
{
"status": "accepted"
}
Notes on usage
After the POST, the calling app should poll the tasks API until the task is completed (indicated by status of either "complete" or "error").
Sample polling request:
https://api.dartmouth.edu/api/tasks/5deeb1c608a94008f54748b2
Sample return:
{
"status": "complete",
"path": null,
"message": "New active room assignment created in Banner",
"id": "5deeb1c608a94008f54748b2"
}
Business Logic
- When an active room assignment booking is posted and the corresponding student already has an active room assignment, the assignment is deactivated in the sis (Banner) and then the new assignment is created.
- When an interim term is specifed (starts with 8, e.g. 820209), all room assignments for the corresponding student/term are first deleted from the sis and then the assignment booking(s) included with the POST are created.