| Requires any of the roles: | Agent, Administrator |
| POST,OPTIONS | /v1/queue/appointments |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class BranchApptWriteResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
int? CalendarEventId;
String? CheckInId;
DateTime? StartLocal;
DateTime? EndLocal;
int? ContactId;
bool? ContactExisted;
bool? Notified;
int? Open;
int? Capacity;
BranchApptWriteResponse({this.ResponseStatus,this.CalendarEventId,this.CheckInId,this.StartLocal,this.EndLocal,this.ContactId,this.ContactExisted,this.Notified,this.Open,this.Capacity});
BranchApptWriteResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
CalendarEventId = json['CalendarEventId'];
CheckInId = json['CheckInId'];
StartLocal = JsonConverters.fromJson(json['StartLocal'],'DateTime',context!);
EndLocal = JsonConverters.fromJson(json['EndLocal'],'DateTime',context!);
ContactId = json['ContactId'];
ContactExisted = json['ContactExisted'];
Notified = json['Notified'];
Open = json['Open'];
Capacity = json['Capacity'];
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'CalendarEventId': CalendarEventId,
'CheckInId': CheckInId,
'StartLocal': JsonConverters.toJson(StartLocal,'DateTime',context!),
'EndLocal': JsonConverters.toJson(EndLocal,'DateTime',context!),
'ContactId': ContactId,
'ContactExisted': ContactExisted,
'Notified': Notified,
'Open': Open,
'Capacity': Capacity
};
getTypeName() => "BranchApptWriteResponse";
TypeContext? context = _ctx;
}
class BranchApptNewContact implements IConvertible
{
String? Name;
String? Phone;
String? Email;
BranchApptNewContact({this.Name,this.Phone,this.Email});
BranchApptNewContact.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Phone = json['Phone'];
Email = json['Email'];
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Phone': Phone,
'Email': Email
};
getTypeName() => "BranchApptNewContact";
TypeContext? context = _ctx;
}
class BranchApptCreateRequest implements IConvertible
{
String? LocationId;
String? Date;
String? StartLocal;
List<String>? LineIds = [];
int? ContactId;
BranchApptNewContact? NewContact;
String? Via;
bool? Notify;
String? Note;
bool? Overbook;
BranchApptCreateRequest({this.LocationId,this.Date,this.StartLocal,this.LineIds,this.ContactId,this.NewContact,this.Via,this.Notify,this.Note,this.Overbook});
BranchApptCreateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
LocationId = json['LocationId'];
Date = json['Date'];
StartLocal = json['StartLocal'];
LineIds = JsonConverters.fromJson(json['LineIds'],'List<String>',context!);
ContactId = json['ContactId'];
NewContact = JsonConverters.fromJson(json['NewContact'],'BranchApptNewContact',context!);
Via = json['Via'];
Notify = json['Notify'];
Note = json['Note'];
Overbook = json['Overbook'];
return this;
}
Map<String, dynamic> toJson() => {
'LocationId': LocationId,
'Date': Date,
'StartLocal': StartLocal,
'LineIds': JsonConverters.toJson(LineIds,'List<String>',context!),
'ContactId': ContactId,
'NewContact': JsonConverters.toJson(NewContact,'BranchApptNewContact',context!),
'Via': Via,
'Notify': Notify,
'Note': Note,
'Overbook': Overbook
};
getTypeName() => "BranchApptCreateRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'BranchApptWriteResponse': TypeInfo(TypeOf.Class, create:() => BranchApptWriteResponse()),
'BranchApptNewContact': TypeInfo(TypeOf.Class, create:() => BranchApptNewContact()),
'BranchApptCreateRequest': TypeInfo(TypeOf.Class, create:() => BranchApptCreateRequest()),
});
Dart BranchApptCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/queue/appointments HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"LocationId":"00000000000000000000000000000000","Date":"String","StartLocal":"String","LineIds":["00000000000000000000000000000000"],"ContactId":0,"NewContact":{"Name":"String","Phone":"String","Email":"String"},"Via":"String","Notify":false,"Note":"String","Overbook":false}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"CalendarEventId":0,"CheckInId":"00000000000000000000000000000000","StartLocal":"0001-01-01T00:00:00.0000000","EndLocal":"0001-01-01T00:00:00.0000000","ContactId":0,"ContactExisted":false,"Notified":false,"Open":0,"Capacity":0}