Required role: | REGISUserRole |
POST | /Sections/AvailableToUnauthenticatedPerson/{uuid}/Term/{reporting_term}/Section/{secUUID} |
---|
import Foundation
import ServiceStack
public class SectionAvailableForUnauthenticatedPersonRequest : Codable
{
public var transaction_uuid:String
public var uuid:String
public var secUUID:String
public var reporting_term:String
required public init(){}
}
public class SectionAvailableForStudentResponse : SectionResponse
{
public var uuid:String
public var studentSectionUUID:String
public var registered_amount:Double?
public var is_full:Bool
public var is_too_late:Bool
public var is_too_early:Bool
public var is_audit:Bool
public var is_selected:Bool
public var is_registered:Bool
public var is_provisional:Bool
public var is_missing_requisites:Bool
public var is_completed:Bool
public var maximum_credit_hours:Double?
public var maximum_audit_hours:Double?
public var can_retake:Bool
public var is_credit_restricted:Bool
public var is_audit_restricted:Bool
public var is_oncampus_restricted_for_change:Bool
public var is_online_restricted_for_change:Bool
public var can_be_provisional:Bool
public var can_be_dropped:Bool
public var ruleMessages:[String] = []
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case uuid
case studentSectionUUID
case registered_amount
case is_full
case is_too_late
case is_too_early
case is_audit
case is_selected
case is_registered
case is_provisional
case is_missing_requisites
case is_completed
case maximum_credit_hours
case maximum_audit_hours
case can_retake
case is_credit_restricted
case is_audit_restricted
case is_oncampus_restricted_for_change
case is_online_restricted_for_change
case can_be_provisional
case can_be_dropped
case ruleMessages
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
uuid = try container.decodeIfPresent(String.self, forKey: .uuid)
studentSectionUUID = try container.decodeIfPresent(String.self, forKey: .studentSectionUUID)
registered_amount = try container.decodeIfPresent(Double.self, forKey: .registered_amount)
is_full = try container.decodeIfPresent(Bool.self, forKey: .is_full)
is_too_late = try container.decodeIfPresent(Bool.self, forKey: .is_too_late)
is_too_early = try container.decodeIfPresent(Bool.self, forKey: .is_too_early)
is_audit = try container.decodeIfPresent(Bool.self, forKey: .is_audit)
is_selected = try container.decodeIfPresent(Bool.self, forKey: .is_selected)
is_registered = try container.decodeIfPresent(Bool.self, forKey: .is_registered)
is_provisional = try container.decodeIfPresent(Bool.self, forKey: .is_provisional)
is_missing_requisites = try container.decodeIfPresent(Bool.self, forKey: .is_missing_requisites)
is_completed = try container.decodeIfPresent(Bool.self, forKey: .is_completed)
maximum_credit_hours = try container.decodeIfPresent(Double.self, forKey: .maximum_credit_hours)
maximum_audit_hours = try container.decodeIfPresent(Double.self, forKey: .maximum_audit_hours)
can_retake = try container.decodeIfPresent(Bool.self, forKey: .can_retake)
is_credit_restricted = try container.decodeIfPresent(Bool.self, forKey: .is_credit_restricted)
is_audit_restricted = try container.decodeIfPresent(Bool.self, forKey: .is_audit_restricted)
is_oncampus_restricted_for_change = try container.decodeIfPresent(Bool.self, forKey: .is_oncampus_restricted_for_change)
is_online_restricted_for_change = try container.decodeIfPresent(Bool.self, forKey: .is_online_restricted_for_change)
can_be_provisional = try container.decodeIfPresent(Bool.self, forKey: .can_be_provisional)
can_be_dropped = try container.decodeIfPresent(Bool.self, forKey: .can_be_dropped)
ruleMessages = try container.decodeIfPresent([String].self, forKey: .ruleMessages) ?? []
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if uuid != nil { try container.encode(uuid, forKey: .uuid) }
if studentSectionUUID != nil { try container.encode(studentSectionUUID, forKey: .studentSectionUUID) }
if registered_amount != nil { try container.encode(registered_amount, forKey: .registered_amount) }
if is_full != nil { try container.encode(is_full, forKey: .is_full) }
if is_too_late != nil { try container.encode(is_too_late, forKey: .is_too_late) }
if is_too_early != nil { try container.encode(is_too_early, forKey: .is_too_early) }
if is_audit != nil { try container.encode(is_audit, forKey: .is_audit) }
if is_selected != nil { try container.encode(is_selected, forKey: .is_selected) }
if is_registered != nil { try container.encode(is_registered, forKey: .is_registered) }
if is_provisional != nil { try container.encode(is_provisional, forKey: .is_provisional) }
if is_missing_requisites != nil { try container.encode(is_missing_requisites, forKey: .is_missing_requisites) }
if is_completed != nil { try container.encode(is_completed, forKey: .is_completed) }
if maximum_credit_hours != nil { try container.encode(maximum_credit_hours, forKey: .maximum_credit_hours) }
if maximum_audit_hours != nil { try container.encode(maximum_audit_hours, forKey: .maximum_audit_hours) }
if can_retake != nil { try container.encode(can_retake, forKey: .can_retake) }
if is_credit_restricted != nil { try container.encode(is_credit_restricted, forKey: .is_credit_restricted) }
if is_audit_restricted != nil { try container.encode(is_audit_restricted, forKey: .is_audit_restricted) }
if is_oncampus_restricted_for_change != nil { try container.encode(is_oncampus_restricted_for_change, forKey: .is_oncampus_restricted_for_change) }
if is_online_restricted_for_change != nil { try container.encode(is_online_restricted_for_change, forKey: .is_online_restricted_for_change) }
if can_be_provisional != nil { try container.encode(can_be_provisional, forKey: .can_be_provisional) }
if can_be_dropped != nil { try container.encode(can_be_dropped, forKey: .can_be_dropped) }
if ruleMessages.count > 0 { try container.encode(ruleMessages, forKey: .ruleMessages) }
}
}
public class SectionResponse : Codable
{
public var responseStatus:ResponseStatus
public var secUUID:String
public var course_name:String
public var section_code:String
public var course_title:String
public var course_short_title:String
public var course_description:String
public var crosslist_description:String
public var crosslist_course_name:String
public var location_long_name:String
public var room:String
public var instructors:[InstructorResponse] = []
public var required_documents:[DocumentResponse] = []
public var start_date:Date?
public var end_date:Date?
public var first_meeting_date:Date?
public var last_meeting_date:Date?
public var meeting_days:String
public var start_times:[String] = []
public var end_times:[String] = []
public var is_online_only:Bool
public var is_weekend:Bool
public var is_weekday:Bool
public var is_evening:Bool
public var is_waitlist:Bool
public var has_special_requirements:Bool
public var special_requirements:String
public var is_unlisted:Bool
public var credit_amounts:[Double] = []
public var audit_amounts:[Double] = []
public var audits_short_name:String
public var audits_long_name:String
public var credits_short_name:String
public var credits_long_name:String
public var distance_ed_materials:String
public var prerequisites:String
public var corequisites:String
public var capacity:Int?
public var flat_fee_amount:Double?
public var additional_fee_amount:Double?
public var registered_students:Int
public var three_credit_plus:Int
public var two_credit:Int
public var one_credit:Int
public var three_audit_plus:Int
public var two_audit:Int
public var one_audit:Int
public var crosslist_registered_students:Int
public var grades_received:Int
public var crosslist_grades_received:Int
public var registration_start_date:Date?
public var registration_end_date:Date?
public var add_start_date:Date?
public var add_end_date:Date?
public var drop_start_date:Date?
public var drop_end_date:Date?
public var grading_end_date:Date?
public var term:String
public var reporting_term:String
public var reporting_year:Int
public var current_status:String
public var added_by:String
public var added_date:Date?
public var changed_by:String
public var changed_date:Date?
public var timestamp:Date
required public init(){}
}
public class InstructorResponse : Codable
{
public var responseStatus:ResponseStatus
public var regent_id:Int
public var regent_login:String
public var preferred_name:String
public var first_name:String
public var last_name:String
public var full_name:String
public var email:String
public var image_base64:String
required public init(){}
}
public class DocumentResponse : Codable
{
public var code:String
public var document_name:String
public var document_description:String
required public init(){}
}
Swift SectionAvailableForUnauthenticatedPersonRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Sections/AvailableToUnauthenticatedPerson/{uuid}/Term/{reporting_term}/Section/{secUUID} HTTP/1.1
Host: data.regent-college.edu
Accept: application/json
Content-Type: application/json
Content-Length: length
{"transaction_uuid":"String","uuid":"String","secUUID":"String","reporting_term":"String"}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"uuid":"String","studentSectionUUID":"String","registered_amount":0,"is_full":false,"is_too_late":false,"is_too_early":false,"is_audit":false,"is_selected":false,"is_registered":false,"is_provisional":false,"is_missing_requisites":false,"is_completed":false,"maximum_credit_hours":0,"maximum_audit_hours":0,"can_retake":false,"is_credit_restricted":false,"is_audit_restricted":false,"is_oncampus_restricted_for_change":false,"is_online_restricted_for_change":false,"can_be_provisional":false,"can_be_dropped":false,"ruleMessages":["String"],"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"secUUID":"String","course_name":"String","section_code":"String","course_title":"String","course_short_title":"String","course_description":"String","crosslist_description":"String","crosslist_course_name":"String","location_long_name":"String","room":"String","instructors":[{"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"regent_id":0,"regent_login":"String","preferred_name":"String","first_name":"String","last_name":"String","full_name":"String","email":"String","image_base64":"String"}],"required_documents":[{"code":"String","document_name":"String","document_description":"String"}],"start_date":"0001-01-01T00:00:00.0000000","end_date":"0001-01-01T00:00:00.0000000","first_meeting_date":"0001-01-01T00:00:00.0000000","last_meeting_date":"0001-01-01T00:00:00.0000000","meeting_days":"String","start_times":["String"],"end_times":["String"],"is_online_only":false,"is_weekend":false,"is_weekday":false,"is_evening":false,"is_waitlist":false,"has_special_requirements":false,"special_requirements":"String","is_unlisted":false,"credit_amounts":[0],"audit_amounts":[0],"audits_short_name":"String","audits_long_name":"String","credits_short_name":"String","credits_long_name":"String","distance_ed_materials":"String","prerequisites":"String","corequisites":"String","capacity":0,"flat_fee_amount":0,"additional_fee_amount":0,"registered_students":0,"three_credit_plus":0,"two_credit":0,"one_credit":0,"three_audit_plus":0,"two_audit":0,"one_audit":0,"crosslist_registered_students":0,"grades_received":0,"crosslist_grades_received":0,"registration_start_date":"0001-01-01T00:00:00.0000000","registration_end_date":"0001-01-01T00:00:00.0000000","add_start_date":"0001-01-01T00:00:00.0000000","add_end_date":"0001-01-01T00:00:00.0000000","drop_start_date":"0001-01-01T00:00:00.0000000","drop_end_date":"0001-01-01T00:00:00.0000000","grading_end_date":"0001-01-01T00:00:00.0000000","term":"String","reporting_term":"String","reporting_year":0,"current_status":"String","added_by":"String","added_date":"0001-01-01T00:00:00.0000000","changed_by":"String","changed_date":"0001-01-01T00:00:00.0000000","timestamp":"0001-01-01T00:00:00.0000000"}