regis

<back to all web services

CourseCreateRequest

Requires Authentication
Required role:REGISUserRole
The following routes are available for this service:
POST/Courses/Admin/Create
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 CourseCreateRequest implements IConvertible
{
    String? course_name;
    String? title;
    String? pretty_title;
    String? course_description;
    bool? is_active;
    List<CourseRequirementResponse>? course_requirements;
    String? authorizing_uuid;

    CourseCreateRequest({this.course_name,this.title,this.pretty_title,this.course_description,this.is_active,this.course_requirements,this.authorizing_uuid});
    CourseCreateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        course_name = json['course_name'];
        title = json['title'];
        pretty_title = json['pretty_title'];
        course_description = json['course_description'];
        is_active = json['is_active'];
        course_requirements = JsonConverters.fromJson(json['course_requirements'],'List<CourseRequirementResponse>',context!);
        authorizing_uuid = json['authorizing_uuid'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'course_name': course_name,
        'title': title,
        'pretty_title': pretty_title,
        'course_description': course_description,
        'is_active': is_active,
        'course_requirements': JsonConverters.toJson(course_requirements,'List<CourseRequirementResponse>',context!),
        'authorizing_uuid': authorizing_uuid
    };

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

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

Dart CourseCreateRequest DTOs

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

HTTP + OTHER

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

POST /Courses/Admin/Create HTTP/1.1 
Host: data.regent-college.edu 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"course_name":"String","title":"String","pretty_title":"String","course_description":"String","is_active":false,"course_requirements":[{"course_id":0,"required_course_id":0,"requirement_group":0,"is_prerequisite":false,"is_corequisite":false,"timestamp":"0001-01-01T00:00:00.0000000"}],"authorizing_uuid":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}