Required permission: | ReadExternalDegrees |
POST | /Academic/{uuid}/ExternalDegrees |
---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class PersonSimpleResponse implements IConvertible
{
ResponseStatus? responseStatus;
int? regent_id;
int? ubc_id;
String? uuid;
String? regent_login;
String? first_name;
String? preferred_name;
String? middle_name;
String? last_name;
String? email;
String? phone_home;
String? phone_cell;
String? phone_bus;
String? addr1;
String? addr2;
String? city;
String? state;
String? country;
String? code;
String? citizenship;
String? citizenship_other;
String? permanent_resident;
DateTime? dob;
bool? is_student;
bool? is_faculty;
bool? is_vendor;
PersonSimpleResponse({this.responseStatus,this.regent_id,this.ubc_id,this.uuid,this.regent_login,this.first_name,this.preferred_name,this.middle_name,this.last_name,this.email,this.phone_home,this.phone_cell,this.phone_bus,this.addr1,this.addr2,this.city,this.state,this.country,this.code,this.citizenship,this.citizenship_other,this.permanent_resident,this.dob,this.is_student,this.is_faculty,this.is_vendor});
PersonSimpleResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
regent_id = json['regent_id'];
ubc_id = json['ubc_id'];
uuid = json['uuid'];
regent_login = json['regent_login'];
first_name = json['first_name'];
preferred_name = json['preferred_name'];
middle_name = json['middle_name'];
last_name = json['last_name'];
email = json['email'];
phone_home = json['phone_home'];
phone_cell = json['phone_cell'];
phone_bus = json['phone_bus'];
addr1 = json['addr1'];
addr2 = json['addr2'];
city = json['city'];
state = json['state'];
country = json['country'];
code = json['code'];
citizenship = json['citizenship'];
citizenship_other = json['citizenship_other'];
permanent_resident = json['permanent_resident'];
dob = JsonConverters.fromJson(json['dob'],'DateTime',context!);
is_student = json['is_student'];
is_faculty = json['is_faculty'];
is_vendor = json['is_vendor'];
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'regent_id': regent_id,
'ubc_id': ubc_id,
'uuid': uuid,
'regent_login': regent_login,
'first_name': first_name,
'preferred_name': preferred_name,
'middle_name': middle_name,
'last_name': last_name,
'email': email,
'phone_home': phone_home,
'phone_cell': phone_cell,
'phone_bus': phone_bus,
'addr1': addr1,
'addr2': addr2,
'city': city,
'state': state,
'country': country,
'code': code,
'citizenship': citizenship,
'citizenship_other': citizenship_other,
'permanent_resident': permanent_resident,
'dob': JsonConverters.toJson(dob,'DateTime',context!),
'is_student': is_student,
'is_faculty': is_faculty,
'is_vendor': is_vendor
};
getTypeName() => "PersonSimpleResponse";
TypeContext? context = _ctx;
}
class StudentProgramSimpleResponse implements IConvertible
{
ResponseStatus? responseStatus;
int? regent_id;
String? uuid;
int? program_id;
String? program_code;
String? program_name;
String? concentration_code;
String? concentration_name;
DateTime? start_date;
DateTime? end_date;
String? catalog;
bool? is_active;
bool? is_graduated;
StudentProgramSimpleResponse({this.responseStatus,this.regent_id,this.uuid,this.program_id,this.program_code,this.program_name,this.concentration_code,this.concentration_name,this.start_date,this.end_date,this.catalog,this.is_active,this.is_graduated});
StudentProgramSimpleResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
regent_id = json['regent_id'];
uuid = json['uuid'];
program_id = json['program_id'];
program_code = json['program_code'];
program_name = json['program_name'];
concentration_code = json['concentration_code'];
concentration_name = json['concentration_name'];
start_date = JsonConverters.fromJson(json['start_date'],'DateTime',context!);
end_date = JsonConverters.fromJson(json['end_date'],'DateTime',context!);
catalog = json['catalog'];
is_active = json['is_active'];
is_graduated = json['is_graduated'];
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'regent_id': regent_id,
'uuid': uuid,
'program_id': program_id,
'program_code': program_code,
'program_name': program_name,
'concentration_code': concentration_code,
'concentration_name': concentration_name,
'start_date': JsonConverters.toJson(start_date,'DateTime',context!),
'end_date': JsonConverters.toJson(end_date,'DateTime',context!),
'catalog': catalog,
'is_active': is_active,
'is_graduated': is_graduated
};
getTypeName() => "StudentProgramSimpleResponse";
TypeContext? context = _ctx;
}
class ExternalDegreeResponse implements IConvertible
{
int? id;
int? institution_id;
String? degree_name;
String? degree_override_name;
String? institution_name;
String? graduation_month;
int? start_year;
int? end_year;
bool? is_only_in_d365;
ExternalDegreeResponse({this.id,this.institution_id,this.degree_name,this.degree_override_name,this.institution_name,this.graduation_month,this.start_year,this.end_year,this.is_only_in_d365});
ExternalDegreeResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
institution_id = json['institution_id'];
degree_name = json['degree_name'];
degree_override_name = json['degree_override_name'];
institution_name = json['institution_name'];
graduation_month = json['graduation_month'];
start_year = json['start_year'];
end_year = json['end_year'];
is_only_in_d365 = json['is_only_in_d365'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'institution_id': institution_id,
'degree_name': degree_name,
'degree_override_name': degree_override_name,
'institution_name': institution_name,
'graduation_month': graduation_month,
'start_year': start_year,
'end_year': end_year,
'is_only_in_d365': is_only_in_d365
};
getTypeName() => "ExternalDegreeResponse";
TypeContext? context = _ctx;
}
class ExternalDegreesAdminResponse implements IConvertible
{
String? degree_code;
String? degree_name;
String? degree_type;
ExternalDegreesAdminResponse({this.degree_code,this.degree_name,this.degree_type});
ExternalDegreesAdminResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
degree_code = json['degree_code'];
degree_name = json['degree_name'];
degree_type = json['degree_type'];
return this;
}
Map<String, dynamic> toJson() => {
'degree_code': degree_code,
'degree_name': degree_name,
'degree_type': degree_type
};
getTypeName() => "ExternalDegreesAdminResponse";
TypeContext? context = _ctx;
}
class ExternalDegreesResponse implements IConvertible
{
ResponseStatus? responseStatus;
PersonSimpleResponse? person;
double? gpa;
List<StudentProgramSimpleResponse>? student_programs;
List<ExternalDegreeResponse>? degrees;
List<ExternalDegreesAdminResponse>? valid_degrees;
ExternalDegreesResponse({this.responseStatus,this.person,this.gpa,this.student_programs,this.degrees,this.valid_degrees});
ExternalDegreesResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
person = JsonConverters.fromJson(json['person'],'PersonSimpleResponse',context!);
gpa = JsonConverters.toDouble(json['gpa']);
student_programs = JsonConverters.fromJson(json['student_programs'],'List<StudentProgramSimpleResponse>',context!);
degrees = JsonConverters.fromJson(json['degrees'],'List<ExternalDegreeResponse>',context!);
valid_degrees = JsonConverters.fromJson(json['valid_degrees'],'List<ExternalDegreesAdminResponse>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
'person': JsonConverters.toJson(person,'PersonSimpleResponse',context!),
'gpa': gpa,
'student_programs': JsonConverters.toJson(student_programs,'List<StudentProgramSimpleResponse>',context!),
'degrees': JsonConverters.toJson(degrees,'List<ExternalDegreeResponse>',context!),
'valid_degrees': JsonConverters.toJson(valid_degrees,'List<ExternalDegreesAdminResponse>',context!)
};
getTypeName() => "ExternalDegreesResponse";
TypeContext? context = _ctx;
}
class ExternalDegreesRequest implements IConvertible
{
String? uuid;
ExternalDegreesRequest({this.uuid});
ExternalDegreesRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
uuid = json['uuid'];
return this;
}
Map<String, dynamic> toJson() => {
'uuid': uuid
};
getTypeName() => "ExternalDegreesRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
'PersonSimpleResponse': TypeInfo(TypeOf.Class, create:() => PersonSimpleResponse()),
'StudentProgramSimpleResponse': TypeInfo(TypeOf.Class, create:() => StudentProgramSimpleResponse()),
'ExternalDegreeResponse': TypeInfo(TypeOf.Class, create:() => ExternalDegreeResponse()),
'ExternalDegreesAdminResponse': TypeInfo(TypeOf.Class, create:() => ExternalDegreesAdminResponse()),
'ExternalDegreesResponse': TypeInfo(TypeOf.Class, create:() => ExternalDegreesResponse()),
'List<StudentProgramSimpleResponse>': TypeInfo(TypeOf.Class, create:() => <StudentProgramSimpleResponse>[]),
'List<ExternalDegreeResponse>': TypeInfo(TypeOf.Class, create:() => <ExternalDegreeResponse>[]),
'List<ExternalDegreesAdminResponse>': TypeInfo(TypeOf.Class, create:() => <ExternalDegreesAdminResponse>[]),
'ExternalDegreesRequest': TypeInfo(TypeOf.Class, create:() => ExternalDegreesRequest()),
});
Dart ExternalDegreesRequest 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 /Academic/{uuid}/ExternalDegrees HTTP/1.1
Host: data.regent-college.edu
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
uuid: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, person: { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, regent_id: 0, ubc_id: 0, uuid: String, regent_login: String, first_name: String, preferred_name: String, middle_name: String, last_name: String, email: String, phone_home: String, phone_cell: String, phone_bus: String, addr1: String, addr2: String, city: String, state: String, country: String, code: String, citizenship: String, citizenship_other: String, permanent_resident: String, dob: 0001-01-01, is_student: False, is_faculty: False, is_vendor: False }, gpa: 0, student_programs: [ { responseStatus: { errorCode: String, message: String, stackTrace: String, errors: [ { errorCode: String, fieldName: String, message: String, meta: { String: String } } ], meta: { String: String } }, regent_id: 0, uuid: String, program_id: 0, program_code: String, program_name: String, concentration_code: String, concentration_name: String, start_date: 0001-01-01, end_date: 0001-01-01, catalog: String, is_active: False, is_graduated: False } ], degrees: [ { id: 0, institution_id: 0, degree_name: String, degree_override_name: String, institution_name: String, graduation_month: String, start_year: 0, end_year: 0, is_only_in_d365: False } ], valid_degrees: [ { degree_code: String, degree_name: String, degree_type: String } ] }