| Requires any of the roles: | Agent, Administrator |
| GET,OPTIONS | /v1/queue/appointments/slots |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class BranchApptSlot implements IConvertible
{
String? StartLocal;
int? Booked;
int? Capacity;
int? Open;
bool? Full;
bool? Past;
bool? Fits;
String? Reason;
BranchApptSlot({this.StartLocal,this.Booked,this.Capacity,this.Open,this.Full,this.Past,this.Fits,this.Reason});
BranchApptSlot.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
StartLocal = json['StartLocal'];
Booked = json['Booked'];
Capacity = json['Capacity'];
Open = json['Open'];
Full = json['Full'];
Past = json['Past'];
Fits = json['Fits'];
Reason = json['Reason'];
return this;
}
Map<String, dynamic> toJson() => {
'StartLocal': StartLocal,
'Booked': Booked,
'Capacity': Capacity,
'Open': Open,
'Full': Full,
'Past': Past,
'Fits': Fits,
'Reason': Reason
};
getTypeName() => "BranchApptSlot";
TypeContext? context = _ctx;
}
class BranchApptSlotsResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
String? Date;
int? TimeslotMinutes;
int? SlotMinutes;
int? Capacity;
bool? OnlinePaused;
List<BranchApptSlot>? Slots = [];
BranchApptSlotsResponse({this.ResponseStatus,this.Date,this.TimeslotMinutes,this.SlotMinutes,this.Capacity,this.OnlinePaused,this.Slots});
BranchApptSlotsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
Date = json['Date'];
TimeslotMinutes = json['TimeslotMinutes'];
SlotMinutes = json['SlotMinutes'];
Capacity = json['Capacity'];
OnlinePaused = json['OnlinePaused'];
Slots = JsonConverters.fromJson(json['Slots'],'List<BranchApptSlot>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'Date': Date,
'TimeslotMinutes': TimeslotMinutes,
'SlotMinutes': SlotMinutes,
'Capacity': Capacity,
'OnlinePaused': OnlinePaused,
'Slots': JsonConverters.toJson(Slots,'List<BranchApptSlot>',context!)
};
getTypeName() => "BranchApptSlotsResponse";
TypeContext? context = _ctx;
}
class BranchApptSlotsRequest implements IConvertible
{
String? LocationId;
String? Date;
String? LineIds;
String? ExcludeCheckInId;
BranchApptSlotsRequest({this.LocationId,this.Date,this.LineIds,this.ExcludeCheckInId});
BranchApptSlotsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
LocationId = json['LocationId'];
Date = json['Date'];
LineIds = json['LineIds'];
ExcludeCheckInId = json['ExcludeCheckInId'];
return this;
}
Map<String, dynamic> toJson() => {
'LocationId': LocationId,
'Date': Date,
'LineIds': LineIds,
'ExcludeCheckInId': ExcludeCheckInId
};
getTypeName() => "BranchApptSlotsRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'BranchApptSlot': TypeInfo(TypeOf.Class, create:() => BranchApptSlot()),
'BranchApptSlotsResponse': TypeInfo(TypeOf.Class, create:() => BranchApptSlotsResponse()),
'List<BranchApptSlot>': TypeInfo(TypeOf.Class, create:() => <BranchApptSlot>[]),
'BranchApptSlotsRequest': TypeInfo(TypeOf.Class, create:() => BranchApptSlotsRequest()),
});
Dart BranchApptSlotsRequest 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.
GET /v1/queue/appointments/slots HTTP/1.1 Host: api.dev.dynamics.trendsic.com Accept: text/jsv
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
}
},
Date: String,
TimeslotMinutes: 0,
SlotMinutes: 0,
Capacity: 0,
OnlinePaused: False,
Slots:
[
{
StartLocal: String,
Booked: 0,
Capacity: 0,
Open: 0,
Full: False,
Past: False,
Fits: False,
Reason: String
}
]
}