regis

<back to all web services

CourseRequirementsRequest

Requires Authentication
Required role:REGISUserRole
The following routes are available for this service:
POST/Course/{id}/Requirements
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class CourseRequirementResponse implements IConvertible
{
    int? course_id;
    int? required_course_id;
    int? requirement_group;
    bool? is_prerequisite;
    bool? is_corequisite;
    DateTime? timestamp;

    CourseRequirementResponse({this.course_id,this.required_course_id,this.requirement_group,this.is_prerequisite,this.is_corequisite,this.timestamp});
    CourseRequirementResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        course_id = json['course_id'];
        required_course_id = json['required_course_id'];
        requirement_group = json['requirement_group'];
        is_prerequisite = json['is_prerequisite'];
        is_corequisite = json['is_corequisite'];
        timestamp = JsonConverters.fromJson(json['timestamp'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'course_id': course_id,
        'required_course_id': required_course_id,
        'requirement_group': requirement_group,
        'is_prerequisite': is_prerequisite,
        'is_corequisite': is_corequisite,
        'timestamp': JsonConverters.toJson(timestamp,'DateTime',context!)
    };

    getTypeName() => "CourseRequirementResponse";
    TypeContext? context = _ctx;
}

class CourseResponse implements IConvertible
{
    int? id;
    String? course_name;
    String? title;
    String? pretty_title;
    String? course_description;
    bool? is_active;
    DateTime? added_date;
    String? added_by;
    DateTime? changed_date;
    String? changed_by;
    DateTime? timestamp;

    CourseResponse({this.id,this.course_name,this.title,this.pretty_title,this.course_description,this.is_active,this.added_date,this.added_by,this.changed_date,this.changed_by,this.timestamp});
    CourseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        course_name = json['course_name'];
        title = json['title'];
        pretty_title = json['pretty_title'];
        course_description = json['course_description'];
        is_active = json['is_active'];
        added_date = JsonConverters.fromJson(json['added_date'],'DateTime',context!);
        added_by = json['added_by'];
        changed_date = JsonConverters.fromJson(json['changed_date'],'DateTime',context!);
        changed_by = json['changed_by'];
        timestamp = JsonConverters.fromJson(json['timestamp'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'course_name': course_name,
        'title': title,
        'pretty_title': pretty_title,
        'course_description': course_description,
        'is_active': is_active,
        'added_date': JsonConverters.toJson(added_date,'DateTime',context!),
        'added_by': added_by,
        'changed_date': JsonConverters.toJson(changed_date,'DateTime',context!),
        'changed_by': changed_by,
        'timestamp': JsonConverters.toJson(timestamp,'DateTime',context!)
    };

    getTypeName() => "CourseResponse";
    TypeContext? context = _ctx;
}

class CourseRequirementsResponse implements IConvertible
{
    ResponseStatus? responseStatus;
    int? course_id;
    List<CourseRequirementResponse>? requirements;
    List<CourseResponse>? courses;

    CourseRequirementsResponse({this.responseStatus,this.course_id,this.requirements,this.courses});
    CourseRequirementsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        course_id = json['course_id'];
        requirements = JsonConverters.fromJson(json['requirements'],'List<CourseRequirementResponse>',context!);
        courses = JsonConverters.fromJson(json['courses'],'List<CourseResponse>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!),
        'course_id': course_id,
        'requirements': JsonConverters.toJson(requirements,'List<CourseRequirementResponse>',context!),
        'courses': JsonConverters.toJson(courses,'List<CourseResponse>',context!)
    };

    getTypeName() => "CourseRequirementsResponse";
    TypeContext? context = _ctx;
}

class CourseRequirementsRequest implements IConvertible
{
    int? id;

    CourseRequirementsRequest({this.id});
    CourseRequirementsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id
    };

    getTypeName() => "CourseRequirementsRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'data.regent_college.edu', types: <String, TypeInfo> {
    'CourseRequirementResponse': TypeInfo(TypeOf.Class, create:() => CourseRequirementResponse()),
    'CourseResponse': TypeInfo(TypeOf.Class, create:() => CourseResponse()),
    'CourseRequirementsResponse': TypeInfo(TypeOf.Class, create:() => CourseRequirementsResponse()),
    'List<CourseRequirementResponse>': TypeInfo(TypeOf.Class, create:() => <CourseRequirementResponse>[]),
    'List<CourseResponse>': TypeInfo(TypeOf.Class, create:() => <CourseResponse>[]),
    'CourseRequirementsRequest': TypeInfo(TypeOf.Class, create:() => CourseRequirementsRequest()),
});

Dart CourseRequirementsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /Course/{id}/Requirements HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"id":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"course_id":0,"requirements":[{"course_id":0,"required_course_id":0,"requirement_group":0,"is_prerequisite":false,"is_corequisite":false,"timestamp":"0001-01-01T00:00:00.0000000"}],"courses":[{"id":0,"course_name":"String","title":"String","pretty_title":"String","course_description":"String","is_active":false,"added_date":"0001-01-01T00:00:00.0000000","added_by":"String","changed_date":"0001-01-01T00:00:00.0000000","changed_by":"String","timestamp":"0001-01-01T00:00:00.0000000"}]}