| GET | /v1/CustomersInLine | ||
|---|---|---|---|
| GET | /v1/CustomersInLine/{LocationId} |
"use strict";
export class PaperworkAsks {
/** @param {{Questionnaire?:boolean,Upload?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
Questionnaire;
/** @type {boolean} */
Upload;
}
export class CustomerInLineObject {
/** @param {{CheckinId?:string,VisitKey?:string,Name?:string,SayNameAs?:string,Line?:string,Description?:string,ServiceId?:string,Status?:number,SignInTime?:string,AdjustedSignInTime?:string,ArrivedTime?:string,SendReminders?:boolean,CalledTime?:string,TicketLabel?:string,StationId?:string,StationName?:string,Id?:string,FullName?:string,TaskTime?:number,Completed?:boolean,CompletedTime?:string,EmployeeId?:string,Employee?:string,QuestionnaireSubmitted?:boolean,HoldReason?:string,HoldExpectedUtc?:string,ReturnedTime?:string,ContactId?:number,MobilePhone?:string,Source?:string,LastMovedFrom?:string,LastMovedUtc?:string,PriorityTime?:string,HoldByName?:string,HoldByStationName?:string,HoldSinceUtc?:string,TicketNo?:number,NoteCount?:number,HasCarryNote?:boolean,CarryNoteBy?:string,CarryNoteAtUtc?:string,PaperworkAsks?:PaperworkAsks,DocumentCount?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
CheckinId;
/** @type {?string} */
VisitKey;
/** @type {string} */
Name;
/** @type {string} */
SayNameAs;
/** @type {string} */
Line;
/** @type {string} */
Description;
/** @type {string} */
ServiceId;
/** @type {number} */
Status;
/** @type {string} */
SignInTime;
/** @type {string} */
AdjustedSignInTime;
/** @type {?string} */
ArrivedTime;
/** @type {boolean} */
SendReminders;
/** @type {?string} */
CalledTime;
/** @type {string} */
TicketLabel;
/** @type {string} */
StationId;
/** @type {string} */
StationName;
/** @type {?string} */
Id;
/** @type {string} */
FullName;
/** @type {?number} */
TaskTime;
/** @type {?boolean} */
Completed;
/** @type {?string} */
CompletedTime;
/** @type {?string} */
EmployeeId;
/** @type {string} */
Employee;
/** @type {?boolean} */
QuestionnaireSubmitted;
/** @type {string} */
HoldReason;
/** @type {?string} */
HoldExpectedUtc;
/** @type {?string} */
ReturnedTime;
/** @type {?number} */
ContactId;
/** @type {string} */
MobilePhone;
/** @type {string} */
Source;
/** @type {string} */
LastMovedFrom;
/** @type {?string} */
LastMovedUtc;
/** @type {?string} */
PriorityTime;
/** @type {string} */
HoldByName;
/** @type {string} */
HoldByStationName;
/** @type {?string} */
HoldSinceUtc;
/** @type {?number} */
TicketNo;
/** @type {?number} */
NoteCount;
/** @type {?boolean} */
HasCarryNote;
/** @type {string} */
CarryNoteBy;
/** @type {?string} */
CarryNoteAtUtc;
/** @type {PaperworkAsks} */
PaperworkAsks;
/** @type {?number} */
DocumentCount;
}
export class LobbySettings {
/** @param {{LocationId?:string,WaitSource?:string,MonitorChime?:string,HasUploadedChime?:boolean,ChimeUrl?:string,MonitorVolume?:number,MonitorAnnounce?:boolean,MonitorAnnounceTemplate?:string,MonitorVoice?:string,MonitorVoiceLang?:string,MonitorVoiceRate?:number,MonitorRepeatAfterSec?:number,MonitorTicketOnly?:boolean,LobbyZoneMode?:string,LobbyTakeoverEveryMin?:number,LobbyTakeoverSec?:number,LobbyIdleScreen?:boolean,TimeZone?:string,MonitorShowServices?:boolean,LobbyTvCount?:number,TicketPrefix?:string,LobbyDensity?:string,LobbyIdleMode?:string,LobbyIdleContentId?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
LocationId;
/** @type {string} */
WaitSource;
/** @type {string} */
MonitorChime;
/** @type {boolean} */
HasUploadedChime;
/** @type {string} */
ChimeUrl;
/** @type {number} */
MonitorVolume;
/** @type {boolean} */
MonitorAnnounce;
/** @type {string} */
MonitorAnnounceTemplate;
/** @type {string} */
MonitorVoice;
/** @type {string} */
MonitorVoiceLang;
/** @type {number} */
MonitorVoiceRate;
/** @type {?number} */
MonitorRepeatAfterSec;
/** @type {boolean} */
MonitorTicketOnly;
/** @type {string} */
LobbyZoneMode;
/** @type {?number} */
LobbyTakeoverEveryMin;
/** @type {?number} */
LobbyTakeoverSec;
/** @type {boolean} */
LobbyIdleScreen;
/** @type {string} */
TimeZone;
/** @type {?boolean} */
MonitorShowServices;
/** @type {?number} */
LobbyTvCount;
/** @type {string} */
TicketPrefix;
/** @type {string} */
LobbyDensity;
/** @type {string} */
LobbyIdleMode;
/** @type {?number} */
LobbyIdleContentId;
}
export class StationSessionView {
/** @param {{SessionId?:string,LocationId?:string,StationId?:string,StationName?:string,EmployeeId?:string,EmployeeName?:string,SignedInUtc?:string,LastSeenUtc?:string,PausedSinceUtc?:string,PauseReason?:string,HomeBranchId?:string,HomeBranchName?:string,IsMine?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
SessionId;
/** @type {string} */
LocationId;
/** @type {string} */
StationId;
/** @type {string} */
StationName;
/** @type {string} */
EmployeeId;
/** @type {string} */
EmployeeName;
/** @type {string} */
SignedInUtc;
/** @type {string} */
LastSeenUtc;
/** @type {?string} */
PausedSinceUtc;
/** @type {string} */
PauseReason;
/** @type {?string} */
HomeBranchId;
/** @type {string} */
HomeBranchName;
/** @type {boolean} */
IsMine;
}
export class CustomersInLineResponse {
/** @param {{ResponseStatus?:ResponseStatus,Customers?:CustomerInLineObject[],LocationName?:string,MonitorShowServices?:boolean,Lobby?:LobbySettings,WorkspaceName?:string,StationTerm?:string,Sessions?:StationSessionView[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseStatus} */
ResponseStatus;
/** @type {CustomerInLineObject[]} */
Customers = [];
/** @type {string} */
LocationName;
/** @type {?boolean} */
MonitorShowServices;
/** @type {LobbySettings} */
Lobby;
/** @type {string} */
WorkspaceName;
/** @type {string} */
StationTerm;
/** @type {StationSessionView[]} */
Sessions = [];
}
export class CustomersInLine {
/** @param {{ApiKey?:string,LocationId?:string,clientIsLoading?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ApiKey;
/** @type {string} */
LocationId;
/** @type {boolean} */
clientIsLoading;
}
JavaScript CustomersInLine 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/CustomersInLine 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
}
},
Customers:
[
{
CheckinId: 00000000000000000000000000000000,
VisitKey: 00000000000000000000000000000000,
Name: String,
SayNameAs: String,
Line: String,
Description: String,
ServiceId: 00000000000000000000000000000000,
Status: 0,
SignInTime: 0001-01-01,
AdjustedSignInTime: 0001-01-01,
ArrivedTime: 0001-01-01,
SendReminders: False,
CalledTime: 0001-01-01,
TicketLabel: String,
StationId: 00000000000000000000000000000000,
StationName: String,
Id: 00000000000000000000000000000000,
FullName: String,
TaskTime: 0,
Completed: False,
CompletedTime: 0001-01-01,
EmployeeId: 00000000000000000000000000000000,
Employee: String,
QuestionnaireSubmitted: False,
HoldReason: String,
HoldExpectedUtc: 0001-01-01,
ReturnedTime: 0001-01-01,
ContactId: 0,
MobilePhone: String,
Source: String,
LastMovedFrom: String,
LastMovedUtc: 0001-01-01,
PriorityTime: 0001-01-01,
HoldByName: String,
HoldByStationName: String,
HoldSinceUtc: 0001-01-01,
TicketNo: 0,
NoteCount: 0,
HasCarryNote: False,
CarryNoteBy: String,
CarryNoteAtUtc: 0001-01-01,
PaperworkAsks:
{
Questionnaire: False,
Upload: False
},
DocumentCount: 0
}
],
LocationName: String,
MonitorShowServices: False,
Lobby:
{
LocationId: 00000000000000000000000000000000,
WaitSource: String,
MonitorChime: String,
HasUploadedChime: False,
ChimeUrl: String,
MonitorVolume: 0,
MonitorAnnounce: False,
MonitorAnnounceTemplate: String,
MonitorVoice: String,
MonitorVoiceLang: String,
MonitorVoiceRate: 0,
MonitorRepeatAfterSec: 0,
MonitorTicketOnly: False,
LobbyZoneMode: String,
LobbyTakeoverEveryMin: 0,
LobbyTakeoverSec: 0,
LobbyIdleScreen: False,
TimeZone: String,
MonitorShowServices: False,
LobbyTvCount: 0,
TicketPrefix: String,
LobbyDensity: String,
LobbyIdleMode: String,
LobbyIdleContentId: 0
},
WorkspaceName: String,
StationTerm: String,
Sessions:
[
{
SessionId: 00000000000000000000000000000000,
LocationId: 00000000000000000000000000000000,
StationId: 00000000000000000000000000000000,
StationName: String,
EmployeeId: 00000000000000000000000000000000,
EmployeeName: String,
SignedInUtc: 0001-01-01,
LastSeenUtc: 0001-01-01,
PausedSinceUtc: 0001-01-01,
PauseReason: String,
HomeBranchId: 00000000000000000000000000000000,
HomeBranchName: String,
IsMine: False
}
]
}