GET | /api/GetSchedulingCalendar | ||
---|---|---|---|
GET | /api/GetSchedulingCalender |
import 'package:servicestack/servicestack.dart';
// @DataContract
class BaseRequest implements IConvertible
{
/**
* This is your AIM API Key provided by Tri-Tech
*/
// @DataMember
// @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header")
String? ApiKey;
// @DataMember
// @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
String? OAuthToken;
BaseRequest({this.ApiKey,this.OAuthToken});
BaseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ApiKey = json['ApiKey'];
OAuthToken = json['OAuthToken'];
return this;
}
Map<String, dynamic> toJson() => {
'ApiKey': ApiKey,
'OAuthToken': OAuthToken
};
getTypeName() => "BaseRequest";
TypeContext? context = _ctx;
}
// @DataContract
class BaseResponseResult implements IConvertible
{
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
String? StatusCode;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
String? Login;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
String? ErrorCode;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
String? ErrorDisplayText;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
String? ErrorMessage;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
String? DomainName;
/**
*
*/
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
String? IpAddress;
BaseResponseResult({this.StatusCode,this.Login,this.ErrorCode,this.ErrorDisplayText,this.ErrorMessage,this.DomainName,this.IpAddress});
BaseResponseResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
StatusCode = json['StatusCode'];
Login = json['Login'];
ErrorCode = json['ErrorCode'];
ErrorDisplayText = json['ErrorDisplayText'];
ErrorMessage = json['ErrorMessage'];
DomainName = json['DomainName'];
IpAddress = json['IpAddress'];
return this;
}
Map<String, dynamic> toJson() => {
'StatusCode': StatusCode,
'Login': Login,
'ErrorCode': ErrorCode,
'ErrorDisplayText': ErrorDisplayText,
'ErrorMessage': ErrorMessage,
'DomainName': DomainName,
'IpAddress': IpAddress
};
getTypeName() => "BaseResponseResult";
TypeContext? context = _ctx;
}
// @DataContract
class BaseResponse implements IConvertible
{
/**
*
*/
// @DataMember
// @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
BaseResponseResult? Status;
BaseResponse({this.Status});
BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Status = JsonConverters.fromJson(json['Status'],'BaseResponseResult',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Status': JsonConverters.toJson(Status,'BaseResponseResult',context!)
};
getTypeName() => "BaseResponse";
TypeContext? context = _ctx;
}
// @DataContract
class AvailabilityInfo implements IConvertible
{
// @DataMember
DateTime? StartTime;
// @DataMember
String? StartTimeString;
// @DataMember
int? Length;
// @DataMember
int? InstructorId;
// @DataMember
int? LocationId;
AvailabilityInfo({this.StartTime,this.StartTimeString,this.Length,this.InstructorId,this.LocationId});
AvailabilityInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
StartTime = JsonConverters.fromJson(json['StartTime'],'DateTime',context!);
StartTimeString = json['StartTimeString'];
Length = json['Length'];
InstructorId = json['InstructorId'];
LocationId = json['LocationId'];
return this;
}
Map<String, dynamic> toJson() => {
'StartTime': JsonConverters.toJson(StartTime,'DateTime',context!),
'StartTimeString': StartTimeString,
'Length': Length,
'InstructorId': InstructorId,
'LocationId': LocationId
};
getTypeName() => "AvailabilityInfo";
TypeContext? context = _ctx;
}
// @DataContract
class DayTimeInfoObj implements IConvertible
{
// @DataMember
int? WeekDayInt;
// @DataMember
String? WeekDay;
// @DataMember
DateTime? StartTime;
// @DataMember
String? StartTimeString;
DayTimeInfoObj({this.WeekDayInt,this.WeekDay,this.StartTime,this.StartTimeString});
DayTimeInfoObj.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
WeekDayInt = json['WeekDayInt'];
WeekDay = json['WeekDay'];
StartTime = JsonConverters.fromJson(json['StartTime'],'DateTime',context!);
StartTimeString = json['StartTimeString'];
return this;
}
Map<String, dynamic> toJson() => {
'WeekDayInt': WeekDayInt,
'WeekDay': WeekDay,
'StartTime': JsonConverters.toJson(StartTime,'DateTime',context!),
'StartTimeString': StartTimeString
};
getTypeName() => "DayTimeInfoObj";
TypeContext? context = _ctx;
}
// @DataContract
class GroupClassInfo implements IConvertible
{
// @DataMember
List<DayTimeInfoObj>? DayTimeInfo;
// @DataMember
DateTime? StartDate;
// @DataMember
DateTime? EndDate;
// @DataMember
String? Guid;
// @DataMember
int? Length;
// @DataMember
int? InstructorId;
// @DataMember
int? LocationId;
// @DataMember
String? ClassName;
// @DataMember
String? ClassDesc;
// @DataMember
String? ClassSummary;
// @DataMember
int? MaxClassMembers;
// @DataMember
int? CurrentClassMembers;
// @DataMember
String? Notes;
GroupClassInfo({this.DayTimeInfo,this.StartDate,this.EndDate,this.Guid,this.Length,this.InstructorId,this.LocationId,this.ClassName,this.ClassDesc,this.ClassSummary,this.MaxClassMembers,this.CurrentClassMembers,this.Notes});
GroupClassInfo.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DayTimeInfo = JsonConverters.fromJson(json['DayTimeInfo'],'List<DayTimeInfoObj>',context!);
StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!);
EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
Guid = json['Guid'];
Length = json['Length'];
InstructorId = json['InstructorId'];
LocationId = json['LocationId'];
ClassName = json['ClassName'];
ClassDesc = json['ClassDesc'];
ClassSummary = json['ClassSummary'];
MaxClassMembers = json['MaxClassMembers'];
CurrentClassMembers = json['CurrentClassMembers'];
Notes = json['Notes'];
return this;
}
Map<String, dynamic> toJson() => {
'DayTimeInfo': JsonConverters.toJson(DayTimeInfo,'List<DayTimeInfoObj>',context!),
'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!),
'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
'Guid': Guid,
'Length': Length,
'InstructorId': InstructorId,
'LocationId': LocationId,
'ClassName': ClassName,
'ClassDesc': ClassDesc,
'ClassSummary': ClassSummary,
'MaxClassMembers': MaxClassMembers,
'CurrentClassMembers': CurrentClassMembers,
'Notes': Notes
};
getTypeName() => "GroupClassInfo";
TypeContext? context = _ctx;
}
// @DataContract
class TimeIncrementByInstructor implements IConvertible
{
// @DataMember
int? InstructorId;
// @DataMember
int? TimeIncrement;
TimeIncrementByInstructor({this.InstructorId,this.TimeIncrement});
TimeIncrementByInstructor.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
InstructorId = json['InstructorId'];
TimeIncrement = json['TimeIncrement'];
return this;
}
Map<String, dynamic> toJson() => {
'InstructorId': InstructorId,
'TimeIncrement': TimeIncrement
};
getTypeName() => "TimeIncrementByInstructor";
TypeContext? context = _ctx;
}
// @DataContract
class GetSchedulingCalendarResponse extends BaseResponse implements IConvertible
{
// @DataMember
List<AvailabilityInfo>? Availabilities;
// @DataMember
List<GroupClassInfo>? GroupClasses;
// @DataMember
int? TimeIncrement;
// @DataMember
List<TimeIncrementByInstructor>? TimeIncrementsByInstructor;
GetSchedulingCalendarResponse({this.Availabilities,this.GroupClasses,this.TimeIncrement,this.TimeIncrementsByInstructor});
GetSchedulingCalendarResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Availabilities = JsonConverters.fromJson(json['Availabilities'],'List<AvailabilityInfo>',context!);
GroupClasses = JsonConverters.fromJson(json['GroupClasses'],'List<GroupClassInfo>',context!);
TimeIncrement = json['TimeIncrement'];
TimeIncrementsByInstructor = JsonConverters.fromJson(json['TimeIncrementsByInstructor'],'List<TimeIncrementByInstructor>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Availabilities': JsonConverters.toJson(Availabilities,'List<AvailabilityInfo>',context!),
'GroupClasses': JsonConverters.toJson(GroupClasses,'List<GroupClassInfo>',context!),
'TimeIncrement': TimeIncrement,
'TimeIncrementsByInstructor': JsonConverters.toJson(TimeIncrementsByInstructor,'List<TimeIncrementByInstructor>',context!)
});
getTypeName() => "GetSchedulingCalendarResponse";
TypeContext? context = _ctx;
}
/**
* GetSchedulingCalendarRequires active-e Lesson Scheduling Service. This API call was accidentally named GetSchedulingCalender in the past.
*/
// @DataContract
class GetSchedulingCalendarRequest extends BaseRequest implements IConvertible
{
/**
* The type of lessons to get a schedule for.
*/
// @DataMember
// @ApiMember(DataType="integer", Description="The type of lessons to get a schedule for.", Format="int64", IsRequired=true, Name="TypeId", ParameterType="query")
int? TypeId;
/**
* If sent, lessons from this date/time onward will be returned. Otherwise the current date/time is used.
*/
// @DataMember
// @ApiMember(DataType="string", Description="If sent, lessons from this date/time onward will be returned. Otherwise the current date/time is used.", Format="date", Name="DateFrom", ParameterType="query")
String? DateFrom;
/**
* If sent, lessons from before this date/time will be returned. Otherwise the DateFrom plus one week is used.
*/
// @DataMember
// @ApiMember(DataType="string", Description="If sent, lessons from before this date/time will be returned. Otherwise the DateFrom plus one week is used.", Format="date", Name="DateTo", ParameterType="query")
String? DateTo;
/**
* If sent, only lessons taught by the sent instructor will be returned.
*/
// @DataMember
// @ApiMember(DataType="integer", Description="If sent, only lessons taught by the sent instructor will be returned.", Format="int32", Name="InstructorId", ParameterType="query")
int? InstructorId;
/**
* If sent, lessons taught at the sent location will be returned.
*/
// @DataMember
// @ApiMember(DataType="integer", Description="If sent, lessons taught at the sent location will be returned.", Format="int64", Name="LocationId", ParameterType="query")
int? LocationId;
GetSchedulingCalendarRequest({this.TypeId,this.DateFrom,this.DateTo,this.InstructorId,this.LocationId});
GetSchedulingCalendarRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
TypeId = json['TypeId'];
DateFrom = json['DateFrom'];
DateTo = json['DateTo'];
InstructorId = json['InstructorId'];
LocationId = json['LocationId'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'TypeId': TypeId,
'DateFrom': DateFrom,
'DateTo': DateTo,
'InstructorId': InstructorId,
'LocationId': LocationId
});
getTypeName() => "GetSchedulingCalendarRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'active_ewebservice.biz', types: <String, TypeInfo> {
'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()),
'BaseResponseResult': TypeInfo(TypeOf.Class, create:() => BaseResponseResult()),
'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
'AvailabilityInfo': TypeInfo(TypeOf.Class, create:() => AvailabilityInfo()),
'DayTimeInfoObj': TypeInfo(TypeOf.Class, create:() => DayTimeInfoObj()),
'GroupClassInfo': TypeInfo(TypeOf.Class, create:() => GroupClassInfo()),
'List<DayTimeInfoObj>': TypeInfo(TypeOf.Class, create:() => <DayTimeInfoObj>[]),
'TimeIncrementByInstructor': TypeInfo(TypeOf.Class, create:() => TimeIncrementByInstructor()),
'GetSchedulingCalendarResponse': TypeInfo(TypeOf.Class, create:() => GetSchedulingCalendarResponse()),
'List<AvailabilityInfo>': TypeInfo(TypeOf.Class, create:() => <AvailabilityInfo>[]),
'List<GroupClassInfo>': TypeInfo(TypeOf.Class, create:() => <GroupClassInfo>[]),
'List<TimeIncrementByInstructor>': TypeInfo(TypeOf.Class, create:() => <TimeIncrementByInstructor>[]),
'GetSchedulingCalendarRequest': TypeInfo(TypeOf.Class, create:() => GetSchedulingCalendarRequest()),
});
Dart GetSchedulingCalendarRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /api/GetSchedulingCalendar HTTP/1.1 Host: active-ewebservice.biz Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <GetSchedulingCalendarResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService"> <Status> <DomainName>String</DomainName> <ErrorCode>String</ErrorCode> <ErrorDisplayText>String</ErrorDisplayText> <ErrorMessage>String</ErrorMessage> <IpAddress>String</IpAddress> <Login>String</Login> <StatusCode>String</StatusCode> </Status> <Availabilities> <GetSchedulingCalendarResponse.AvailabilityInfo> <InstructorId>0</InstructorId> <Length>0</Length> <LocationId>0</LocationId> <StartTime>0001-01-01T00:00:00</StartTime> <StartTimeString>1/1/0001 12:00:00 AM</StartTimeString> </GetSchedulingCalendarResponse.AvailabilityInfo> </Availabilities> <GroupClasses> <GetSchedulingCalendarResponse.GroupClassInfo> <ClassDesc>String</ClassDesc> <ClassName>String</ClassName> <ClassSummary>String</ClassSummary> <CurrentClassMembers>0</CurrentClassMembers> <DayTimeInfo> <GetSchedulingCalendarResponse.DayTimeInfoObj> <StartTime>0001-01-01T00:00:00</StartTime> <StartTimeString>1/1/0001 12:00:00 AM</StartTimeString> <WeekDay>String</WeekDay> <WeekDayInt>0</WeekDayInt> </GetSchedulingCalendarResponse.DayTimeInfoObj> </DayTimeInfo> <EndDate>0001-01-01T00:00:00</EndDate> <Guid>00000000-0000-0000-0000-000000000000</Guid> <InstructorId>0</InstructorId> <Length>0</Length> <LocationId>0</LocationId> <MaxClassMembers>0</MaxClassMembers> <Notes>String</Notes> <StartDate>0001-01-01T00:00:00</StartDate> </GetSchedulingCalendarResponse.GroupClassInfo> </GroupClasses> <TimeIncrement>0</TimeIncrement> <TimeIncrementsByInstructor> <GetSchedulingCalendarResponse.TimeIncrementByInstructor> <InstructorId>0</InstructorId> <TimeIncrement>0</TimeIncrement> </GetSchedulingCalendarResponse.TimeIncrementByInstructor> </TimeIncrementsByInstructor> </GetSchedulingCalendarResponse>