Required role: | REGISUserRole |
POST | /Sections/Available/{uuid}/Term/{reporting_term}/Section/{secUUID} |
---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InstructorResponse:
response_status: Optional[ResponseStatus] = None
regent_id: int = 0
regent_login: Optional[str] = None
preferred_name: Optional[str] = None
first_name: Optional[str] = None
last_name: Optional[str] = None
full_name: Optional[str] = None
email: Optional[str] = None
image_base64: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DocumentResponse:
code: Optional[str] = None
document_name: Optional[str] = None
document_description: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SectionResponse:
response_status: Optional[ResponseStatus] = None
sec_u_u_i_d: Optional[str] = None
course_name: Optional[str] = None
section_code: Optional[str] = None
course_title: Optional[str] = None
course_short_title: Optional[str] = None
course_description: Optional[str] = None
crosslist_description: Optional[str] = None
crosslist_course_name: Optional[str] = None
location_long_name: Optional[str] = None
room: Optional[str] = None
instructors: Optional[List[InstructorResponse]] = None
required_documents: Optional[List[DocumentResponse]] = None
start_date: Optional[datetime.datetime] = None
end_date: Optional[datetime.datetime] = None
first_meeting_date: Optional[datetime.datetime] = None
last_meeting_date: Optional[datetime.datetime] = None
meeting_days: Optional[str] = None
start_times: Optional[List[str]] = None
end_times: Optional[List[str]] = None
is_online_only: bool = False
is_weekend: bool = False
is_weekday: bool = False
is_evening: bool = False
is_waitlist: bool = False
has_special_requirements: bool = False
special_requirements: Optional[str] = None
is_unlisted: bool = False
credit_amounts: Optional[List[Decimal]] = None
audit_amounts: Optional[List[Decimal]] = None
audits_short_name: Optional[str] = None
audits_long_name: Optional[str] = None
credits_short_name: Optional[str] = None
credits_long_name: Optional[str] = None
distance_ed_materials: Optional[str] = None
prerequisites: Optional[str] = None
corequisites: Optional[str] = None
capacity: Optional[int] = None
flat_fee_amount: Optional[Decimal] = None
additional_fee_amount: Optional[Decimal] = None
registered_students: int = 0
three_credit_plus: int = 0
two_credit: int = 0
one_credit: int = 0
three_audit_plus: int = 0
two_audit: int = 0
one_audit: int = 0
crosslist_registered_students: int = 0
grades_received: int = 0
crosslist_grades_received: int = 0
registration_start_date: Optional[datetime.datetime] = None
registration_end_date: Optional[datetime.datetime] = None
add_start_date: Optional[datetime.datetime] = None
add_end_date: Optional[datetime.datetime] = None
drop_start_date: Optional[datetime.datetime] = None
drop_end_date: Optional[datetime.datetime] = None
grading_end_date: Optional[datetime.datetime] = None
term: Optional[str] = None
reporting_term: Optional[str] = None
reporting_year: int = 0
current_status: Optional[str] = None
added_by: Optional[str] = None
added_date: Optional[datetime.datetime] = None
changed_by: Optional[str] = None
changed_date: Optional[datetime.datetime] = None
timestamp: datetime.datetime = datetime.datetime(1, 1, 1)
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SectionAvailableForStudentResponse(SectionResponse):
uuid: Optional[str] = None
student_section_u_u_i_d: Optional[str] = None
registered_amount: Optional[Decimal] = None
is_full: bool = False
is_too_late: bool = False
is_too_early: bool = False
is_audit: bool = False
is_selected: bool = False
is_registered: bool = False
is_provisional: bool = False
is_missing_requisites: bool = False
is_completed: bool = False
maximum_credit_hours: Optional[Decimal] = None
maximum_audit_hours: Optional[Decimal] = None
can_retake: bool = False
is_credit_restricted: bool = False
is_audit_restricted: bool = False
is_oncampus_restricted_for_change: bool = False
is_online_restricted_for_change: bool = False
can_be_provisional: bool = False
can_be_dropped: bool = False
rule_messages: Optional[List[str]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SectionAvailableForStudentRequest:
transaction_uuid: Optional[str] = None
uuid: Optional[str] = None
sec_u_u_i_d: Optional[str] = None
reporting_term: Optional[str] = None
Python SectionAvailableForStudentRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Sections/Available/{uuid}/Term/{reporting_term}/Section/{secUUID} HTTP/1.1
Host: data.regent-college.edu
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SectionAvailableForStudentRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/regis.ClassLibrary.Requests">
<reporting_term>String</reporting_term>
<secUUID>String</secUUID>
<transaction_uuid>String</transaction_uuid>
<uuid>String</uuid>
</SectionAvailableForStudentRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <SectionAvailableForStudentResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/regis.ClassLibrary.Responses"> <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types"> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:Message>String</d2p1:Message> <d2p1:StackTrace>String</d2p1:StackTrace> <d2p1:Errors> <d2p1:ResponseError> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:FieldName>String</d2p1:FieldName> <d2p1:Message>String</d2p1:Message> <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </d2p1:Meta> </d2p1:ResponseError> </d2p1:Errors> <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </d2p1:Meta> </ResponseStatus> <add_end_date>0001-01-01T00:00:00</add_end_date> <add_start_date>0001-01-01T00:00:00</add_start_date> <added_by>String</added_by> <added_date>0001-01-01T00:00:00</added_date> <additional_fee_amount>0</additional_fee_amount> <audit_amounts xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d2p1:decimal>0</d2p1:decimal> </audit_amounts> <audits_long_name>String</audits_long_name> <audits_short_name>String</audits_short_name> <capacity>0</capacity> <changed_by>String</changed_by> <changed_date>0001-01-01T00:00:00</changed_date> <corequisites>String</corequisites> <course_description>String</course_description> <course_name>String</course_name> <course_short_title>String</course_short_title> <course_title>String</course_title> <credit_amounts xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d2p1:decimal>0</d2p1:decimal> </credit_amounts> <credits_long_name>String</credits_long_name> <credits_short_name>String</credits_short_name> <crosslist_course_name>String</crosslist_course_name> <crosslist_description>String</crosslist_description> <crosslist_grades_received>0</crosslist_grades_received> <crosslist_registered_students>0</crosslist_registered_students> <current_status>String</current_status> <distance_ed_materials>String</distance_ed_materials> <drop_end_date>0001-01-01T00:00:00</drop_end_date> <drop_start_date>0001-01-01T00:00:00</drop_start_date> <end_date>0001-01-01T00:00:00</end_date> <end_times xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d2p1:string>String</d2p1:string> </end_times> <first_meeting_date>0001-01-01T00:00:00</first_meeting_date> <flat_fee_amount>0</flat_fee_amount> <grades_received>0</grades_received> <grading_end_date>0001-01-01T00:00:00</grading_end_date> <has_special_requirements>false</has_special_requirements> <instructors> <InstructorResponse> <ResponseStatus xmlns:d4p1="http://schemas.servicestack.net/types"> <d4p1:ErrorCode>String</d4p1:ErrorCode> <d4p1:Message>String</d4p1:Message> <d4p1:StackTrace>String</d4p1:StackTrace> <d4p1:Errors> <d4p1:ResponseError> <d4p1:ErrorCode>String</d4p1:ErrorCode> <d4p1:FieldName>String</d4p1:FieldName> <d4p1:Message>String</d4p1:Message> <d4p1:Meta xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d7p1:KeyValueOfstringstring> <d7p1:Key>String</d7p1:Key> <d7p1:Value>String</d7p1:Value> </d7p1:KeyValueOfstringstring> </d4p1:Meta> </d4p1:ResponseError> </d4p1:Errors> <d4p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </d4p1:Meta> </ResponseStatus> <email>String</email> <first_name>String</first_name> <full_name>String</full_name> <image_base64>String</image_base64> <last_name>String</last_name> <preferred_name>String</preferred_name> <regent_id>0</regent_id> <regent_login>String</regent_login> </InstructorResponse> </instructors> <is_evening>false</is_evening> <is_online_only>false</is_online_only> <is_unlisted>false</is_unlisted> <is_waitlist>false</is_waitlist> <is_weekday>false</is_weekday> <is_weekend>false</is_weekend> <last_meeting_date>0001-01-01T00:00:00</last_meeting_date> <location_long_name>String</location_long_name> <meeting_days>String</meeting_days> <one_audit>0</one_audit> <one_credit>0</one_credit> <prerequisites>String</prerequisites> <registered_students>0</registered_students> <registration_end_date>0001-01-01T00:00:00</registration_end_date> <registration_start_date>0001-01-01T00:00:00</registration_start_date> <reporting_term>String</reporting_term> <reporting_year>0</reporting_year> <required_documents> <DocumentResponse> <code>String</code> <document_description>String</document_description> <document_name>String</document_name> </DocumentResponse> </required_documents> <room>String</room> <secUUID>String</secUUID> <section_code>String</section_code> <special_requirements>String</special_requirements> <start_date>0001-01-01T00:00:00</start_date> <start_times xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d2p1:string>String</d2p1:string> </start_times> <term>String</term> <three_audit_plus>0</three_audit_plus> <three_credit_plus>0</three_credit_plus> <timestamp>0001-01-01T00:00:00</timestamp> <two_audit>0</two_audit> <two_credit>0</two_credit> <can_be_dropped>false</can_be_dropped> <can_be_provisional>false</can_be_provisional> <can_retake>false</can_retake> <is_audit>false</is_audit> <is_audit_restricted>false</is_audit_restricted> <is_completed>false</is_completed> <is_credit_restricted>false</is_credit_restricted> <is_full>false</is_full> <is_missing_requisites>false</is_missing_requisites> <is_oncampus_restricted_for_change>false</is_oncampus_restricted_for_change> <is_online_restricted_for_change>false</is_online_restricted_for_change> <is_provisional>false</is_provisional> <is_registered>false</is_registered> <is_selected>false</is_selected> <is_too_early>false</is_too_early> <is_too_late>false</is_too_late> <maximum_audit_hours>0</maximum_audit_hours> <maximum_credit_hours>0</maximum_credit_hours> <registered_amount>0</registered_amount> <ruleMessages xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d2p1:string>String</d2p1:string> </ruleMessages> <studentSectionUUID>String</studentSectionUUID> <uuid>String</uuid> </SectionAvailableForStudentResponse>