| 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
}