Required role: | REGISUserRole |
POST | /Registration/{uuid}/Add/{reporting_term} |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class AddRegistrationsRequest
{
var uuid:String? = null
var transaction_uuid:String? = null
var reporting_term:String? = null
var sections:ArrayList<AddRegistrationRequest> = ArrayList<AddRegistrationRequest>()
var authorizing_uuid:String? = null
}
open class AddRegistrationRequest
{
var section_uuid:String? = null
var amount:BigDecimal? = null
var is_audit:Boolean? = null
var is_provisional:Boolean? = null
}
open class AddRegistrationsResponse : InvoiceResponse()
{
var transaction_uuid:String? = null
var studentSectionInvoiceItems:ArrayList<StudentSectionInvoiceItemResponse> = ArrayList<StudentSectionInvoiceItemResponse>()
var sectionRates:HashMap<String,ArrayList<SectionRateWithAmountResponse>> = HashMap<String,ArrayList<SectionRateWithAmountResponse>>()
var creditTuitionRate:InvoiceItemAdminResponse? = null
var auditTuitionRate:InvoiceItemAdminResponse? = null
var studentAge:Int? = null
var studentAgeAtEarliestSectionStartDate:Int? = null
var isRegentGrad:Boolean? = null
var isOnlyUnclassified:Boolean? = null
var canRegisterForAuditInTerm:Boolean? = null
var canRegisterForCreditInTerm:Boolean? = null
var messages:ArrayList<String> = ArrayList<String>()
var currentTermAuditHours:BigDecimal? = null
var currentTermCreditHours:BigDecimal? = null
var totalCreditHours:BigDecimal? = null
var availableInvoiceItems:ArrayList<InvoiceItemAdminResponse> = ArrayList<InvoiceItemAdminResponse>()
var availableBenefits:ArrayList<BenefitResponse> = ArrayList<BenefitResponse>()
}
open class InvoiceResponse
{
var responseStatus:ResponseStatus? = null
var invoiceUUID:String? = null
var regent_id:Int? = null
var uuid:String? = null
var reporting_term:String? = null
var total_charges:BigDecimal? = null
var total_credits:BigDecimal? = null
var current_status:String? = null
var timestamp:Date? = null
}
open class StudentSectionInvoiceItemResponse : InvoiceItemResponse()
{
var studentSection:StudentSectionResponse? = null
}
open class InvoiceItemResponse
{
var responseStatus:ResponseStatus? = null
var invoiceItemUUID:String? = null
var rate_id:Int? = null
var rate_code:String? = null
var rate_description:String? = null
var charge:BigDecimal? = null
var credit:BigDecimal? = null
}
open class StudentSectionResponse : SectionResponse()
{
var studentSectionUUID:String? = null
var registered_amount:BigDecimal? = null
var is_provisional:Boolean? = null
var is_audit:Boolean? = null
}
open class SectionResponse
{
var responseStatus:ResponseStatus? = null
var secUUID:String? = null
var course_name:String? = null
var section_code:String? = null
var course_title:String? = null
var course_short_title:String? = null
var course_description:String? = null
var crosslist_description:String? = null
var crosslist_course_name:String? = null
var location_long_name:String? = null
var room:String? = null
var instructors:ArrayList<InstructorResponse> = ArrayList<InstructorResponse>()
var required_documents:ArrayList<DocumentResponse> = ArrayList<DocumentResponse>()
var start_date:Date? = null
var end_date:Date? = null
var first_meeting_date:Date? = null
var last_meeting_date:Date? = null
var meeting_days:String? = null
var start_times:ArrayList<String> = ArrayList<String>()
var end_times:ArrayList<String> = ArrayList<String>()
var is_online_only:Boolean? = null
var is_weekend:Boolean? = null
var is_weekday:Boolean? = null
var is_evening:Boolean? = null
var is_waitlist:Boolean? = null
var has_special_requirements:Boolean? = null
var special_requirements:String? = null
var is_unlisted:Boolean? = null
var credit_amounts:ArrayList<BigDecimal> = ArrayList<BigDecimal>()
var audit_amounts:ArrayList<BigDecimal> = ArrayList<BigDecimal>()
var audits_short_name:String? = null
var audits_long_name:String? = null
var credits_short_name:String? = null
var credits_long_name:String? = null
var distance_ed_materials:String? = null
var prerequisites:String? = null
var corequisites:String? = null
var capacity:Int? = null
var flat_fee_amount:BigDecimal? = null
var additional_fee_amount:BigDecimal? = null
var registered_students:Int? = null
var three_credit_plus:Int? = null
var two_credit:Int? = null
var one_credit:Int? = null
var three_audit_plus:Int? = null
var two_audit:Int? = null
var one_audit:Int? = null
var crosslist_registered_students:Int? = null
var grades_received:Int? = null
var crosslist_grades_received:Int? = null
var registration_start_date:Date? = null
var registration_end_date:Date? = null
var add_start_date:Date? = null
var add_end_date:Date? = null
var drop_start_date:Date? = null
var drop_end_date:Date? = null
var grading_end_date:Date? = null
var term:String? = null
var reporting_term:String? = null
var reporting_year:Int? = null
var current_status:String? = null
var added_by:String? = null
var added_date:Date? = null
var changed_by:String? = null
var changed_date:Date? = null
var timestamp:Date? = null
}
open class InstructorResponse
{
var responseStatus:ResponseStatus? = null
var regent_id:Int? = null
var regent_login:String? = null
var preferred_name:String? = null
var first_name:String? = null
var last_name:String? = null
var full_name:String? = null
var email:String? = null
var image_base64:String? = null
}
open class DocumentResponse
{
var code:String? = null
var document_name:String? = null
var document_description:String? = null
}
open class InvoiceItemAdminResponse
{
var responseStatus:ResponseStatus? = null
var invoiceItemUUID:String? = null
var rate_id:Int? = null
var rate_code:String? = null
var rate_description:String? = null
var is_required:Boolean? = null
var is_optional:Boolean? = null
var charge:BigDecimal? = null
var credit:BigDecimal? = null
}
open class BenefitResponse
{
var rate_id:Int? = null
var rate_code:String? = null
var rate_description:String? = null
var percentage_rate:BigDecimal? = null
var is_optional:Boolean? = null
var is_required:Boolean? = null
}
Kotlin AddRegistrationsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /Registration/{uuid}/Add/{reporting_term} HTTP/1.1
Host: data.regent-college.edu
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
uuid: String,
transaction_uuid: String,
reporting_term: String,
sections:
[
{
section_uuid: String,
amount: 0,
is_audit: False,
is_provisional: False
}
],
authorizing_uuid: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { transaction_uuid: String, studentSectionInvoiceItems: [ { studentSection: { studentSectionUUID: String, registered_amount: 0, is_provisional: False, is_audit: False, 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-01, end_date: 0001-01-01, first_meeting_date: 0001-01-01, last_meeting_date: 0001-01-01, 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-01, registration_end_date: 0001-01-01, add_start_date: 0001-01-01, add_end_date: 0001-01-01, drop_start_date: 0001-01-01, drop_end_date: 0001-01-01, grading_end_date: 0001-01-01, term: String, reporting_term: String, reporting_year: 0, current_status: String, added_by: String, added_date: 0001-01-01, changed_by: String, changed_date: 0001-01-01, timestamp: 0001-01-01 }, responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, invoiceItemUUID: String, rate_id: 0, rate_code: String, rate_description: String, charge: 0, credit: 0 } ], sectionRates: { String: [ { rate_id: 0, charge: 0, credit: 0, responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, uuid: String, secUUID: String, section_id: 0, course_name: String, section_code: String, title: String, reporting_term: String, rate_code: String, rate_description: String, is_override_credit_rate: False, is_override_audit_rate: False } ] }, creditTuitionRate: { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, invoiceItemUUID: String, rate_id: 0, rate_code: String, rate_description: String, is_required: False, is_optional: False, charge: 0, credit: 0 }, auditTuitionRate: { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, invoiceItemUUID: String, rate_id: 0, rate_code: String, rate_description: String, is_required: False, is_optional: False, charge: 0, credit: 0 }, studentAge: 0, studentAgeAtEarliestSectionStartDate: 0, isRegentGrad: False, isOnlyUnclassified: False, canRegisterForAuditInTerm: False, canRegisterForCreditInTerm: False, messages: [ String ], currentTermAuditHours: 0, currentTermCreditHours: 0, totalCreditHours: 0, availableInvoiceItems: [ { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, invoiceItemUUID: String, rate_id: 0, rate_code: String, rate_description: String, is_required: False, is_optional: False, charge: 0, credit: 0 } ], availableBenefits: [ { rate_id: 0, rate_code: String, rate_description: String, percentage_rate: 0, is_optional: False, is_required: False } ], responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, invoiceUUID: String, regent_id: 0, uuid: String, reporting_term: String, total_charges: 0, total_credits: 0, current_status: String, timestamp: 0001-01-01 }