| GET | /DashboardStats |
|---|
"use strict";
export class PagingMetadata {
/** @param {{Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Starting Record */
Offset;
/**
* @type {string}
* @description Number of records to return (PageSize) */
Limit;
/**
* @type {number}
* @description Total Number of Records in a Full Reponse (if no paging) */
TotalRecords;
/**
* @type {number}
* @description Total Number of Records in this Reponse (on this page) */
ResponseRecords;
}
export class ThreeDayCounts {
/** @param {{DayPlusZeroTtl?:number,DayPlusOneTtl?:number,DayPlusTwoTtl?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
DayPlusZeroTtl;
/** @type {number} */
DayPlusOneTtl;
/** @type {number} */
DayPlusTwoTtl;
}
export class MonthlyActivityBreakdown {
/** @param {{ReportDate?:string,MonthlyEvents?:number,C?:number,C_Percentage?:number,I?:number,I_Percentage?:number,T?:number,T_Percentage?:number,X?:number,X_Percentage?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ReportDate;
/** @type {number} */
MonthlyEvents;
/** @type {number} */
C;
/** @type {number} */
C_Percentage;
/** @type {number} */
I;
/** @type {number} */
I_Percentage;
/** @type {number} */
T;
/** @type {number} */
T_Percentage;
/** @type {number} */
X;
/** @type {number} */
X_Percentage;
}
export class UserActivity {
/** @param {{UserName?:string,FirstName?:string,LastName?:string,UserID?:number,UserFrequency?:string,ActivityMeasure?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
UserName;
/** @type {string} */
FirstName;
/** @type {string} */
LastName;
/** @type {number} */
UserID;
/** @type {string} */
UserFrequency;
/** @type {number} */
ActivityMeasure;
}
export class ConsultantPerformance {
/** @param {{Name?:string,Total?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {number} */
Total;
}
export class ReportPerformance {
/** @param {{Name?:string,UrlSlug?:string,Total?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
UrlSlug;
/** @type {number} */
Total;
}
export class BookingsAirConversion {
/** @param {{TotalTicketed?:number,TotalUnticketed?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
TotalTicketed;
/** @type {number} */
TotalUnticketed;
}
export class PassengerContactElements {
/** @param {{DateYear?:number,DateMonth?:number,WithMobilePercent?:number,WithEmailPercent?:number,TotalWithMobile?:number,TotalWithEmail?:number,TotalCreated?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
DateYear;
/** @type {number} */
DateMonth;
/** @type {number} */
WithMobilePercent;
/** @type {number} */
WithEmailPercent;
/** @type {number} */
TotalWithMobile;
/** @type {number} */
TotalWithEmail;
/** @type {number} */
TotalCreated;
}
export class DashboardStats {
/** @param {{ProblematicBookings?:ThreeDayCounts,AirlineTicketing?:ThreeDayCounts,UnticketedBookingsByTau?:ThreeDayCounts,OutstandingBookingActions?:ThreeDayCounts,MonthlyActivity?:MonthlyActivityBreakdown[],MostActiveUsers?:UserActivity[],TopConsultants?:ConsultantPerformance[],TopReports?:ReportPerformance[],ActiveBookingsAirConversion?:BookingsAirConversion,PassengerElements?:PassengerContactElements[],ReportUsageSummary?:ReportPerformance[],MonthlyActivityFormatted?:string,PassengerElementsFormatted?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ThreeDayCounts} */
ProblematicBookings;
/** @type {ThreeDayCounts} */
AirlineTicketing;
/** @type {ThreeDayCounts} */
UnticketedBookingsByTau;
/** @type {ThreeDayCounts} */
OutstandingBookingActions;
/** @type {MonthlyActivityBreakdown[]} */
MonthlyActivity;
/** @type {UserActivity[]} */
MostActiveUsers;
/** @type {ConsultantPerformance[]} */
TopConsultants;
/** @type {ReportPerformance[]} */
TopReports;
/** @type {BookingsAirConversion} */
ActiveBookingsAirConversion;
/** @type {PassengerContactElements[]} */
PassengerElements;
/** @type {ReportPerformance[]} */
ReportUsageSummary;
/** @type {string} */
MonthlyActivityFormatted;
/** @type {string} */
PassengerElementsFormatted;
}
/** @typedef TItemResponse {any} */
/** @typedef TItem {any} */
export class Report {
/** @param {{Item?:TItem}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {TItem} */
Item;
}
export class DashboardStatsByOptionsResponseReport extends Report {
/** @param {{Item?:TItem}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class CacheMetadata {
/** @param {{CachedAt?:string,CacheExpiresAt?:string,IsFromCache?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
CachedAt;
/** @type {string} */
CacheExpiresAt;
/** @type {boolean} */
IsFromCache;
}
export class ResponseMetadata {
/** @param {{Success?:boolean,HasCache?:boolean,HasPaging?:boolean,CacheMetadata?:CacheMetadata,PagingMetadata?:PagingMetadata}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
Success;
/** @type {boolean} */
HasCache;
/** @type {boolean} */
HasPaging;
/** @type {CacheMetadata} */
CacheMetadata;
/** @type {PagingMetadata} */
PagingMetadata;
}
export class AgentivityError {
/** @param {{ErrorCode?:string,Message?:string,StatusCode?:string,VerboseMessage?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ErrorCode;
/** @type {string} */
Message;
/** @type {string} */
StatusCode;
/** @type {string} */
VerboseMessage;
}
/** @typedef TItem {any} */
/** @typedef TReport {any} */
export class ItemResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:TReport,ResponseError?:AgentivityError}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseMetadata} */
ResponseMetadata;
/** @type {TReport} */
ResponseReport;
/** @type {AgentivityError} */
ResponseError;
}
export class DashboardStatsByOptionsItemResponse extends ItemResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:TReport,ResponseError?:AgentivityError}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
/** @typedef {number} */
export var DashboardOptions;
(function (DashboardOptions) {
DashboardOptions[DashboardOptions["ProblematicBookingsCount"] = 1] = "ProblematicBookingsCount"
DashboardOptions[DashboardOptions["AirlineTicketingCount"] = 2] = "AirlineTicketingCount"
DashboardOptions[DashboardOptions["UnticketedBookingsByTauCount"] = 4] = "UnticketedBookingsByTauCount"
DashboardOptions[DashboardOptions["MonthlyActivity"] = 8] = "MonthlyActivity"
DashboardOptions[DashboardOptions["ActiveBookingsAirConversion"] = 16] = "ActiveBookingsAirConversion"
DashboardOptions[DashboardOptions["PassengerContacts"] = 32] = "PassengerContacts"
DashboardOptions[DashboardOptions["TopConsultants"] = 64] = "TopConsultants"
DashboardOptions[DashboardOptions["MostActiveUsers"] = 128] = "MostActiveUsers"
DashboardOptions[DashboardOptions["TopReports"] = 256] = "TopReports"
DashboardOptions[DashboardOptions["ReportUsageSummary"] = 512] = "ReportUsageSummary"
DashboardOptions[DashboardOptions["OutstandingBookingActionsCount"] = 1024] = "OutstandingBookingActionsCount"
})(DashboardOptions || (DashboardOptions = {}));
export class DashboardStatsByOptions extends PagingMetadata {
/** @param {{UserName?:string,ReportsTop?:number,ReportsDaysSpan?:number,MostActiveUsersTop?:number,MostActiveUsersDaysSpan?:number,TopConsultantsLastDaysSpan?:number,Options?:DashboardOptions,Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description UserName in form of an email address */
UserName;
/**
* @type {?number}
* @description Top reports */
ReportsTop;
/**
* @type {?number}
* @description Reports in days span */
ReportsDaysSpan;
/**
* @type {?number}
* @description Top most active users */
MostActiveUsersTop;
/**
* @type {?number}
* @description Most active users in days span */
MostActiveUsersDaysSpan;
/**
* @type {?number}
* @description Top consultants last days span */
TopConsultantsLastDaysSpan;
/**
* @type {DashboardOptions}
* @description Options */
Options;
}
JavaScript DashboardStatsByOptions 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 /DashboardStats HTTP/1.1 Host: servicestack.agentivity.com Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<AgentivityResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="schemas.agentivity.com/types">
<ResponseMetadata>
<Success>false</Success>
<HasCache>false</HasCache>
<HasPaging>false</HasPaging>
<CacheMetadata>
<IsFromCache>false</IsFromCache>
<CachedAt>0001-01-01T00:00:00</CachedAt>
<CacheExpiresAt>0001-01-01T00:00:00</CacheExpiresAt>
</CacheMetadata>
<PagingMetadata>
<Limit>String</Limit>
<Offset>String</Offset>
<ResponseRecords>0</ResponseRecords>
<TotalRecords>0</TotalRecords>
</PagingMetadata>
</ResponseMetadata>
<ResponseReport>
<Item>
<ProblematicBookings>
<DayPlusZeroTtl>0</DayPlusZeroTtl>
<DayPlusOneTtl>0</DayPlusOneTtl>
<DayPlusTwoTtl>0</DayPlusTwoTtl>
</ProblematicBookings>
<AirlineTicketing>
<DayPlusZeroTtl>0</DayPlusZeroTtl>
<DayPlusOneTtl>0</DayPlusOneTtl>
<DayPlusTwoTtl>0</DayPlusTwoTtl>
</AirlineTicketing>
<UnticketedBookingsByTau>
<DayPlusZeroTtl>0</DayPlusZeroTtl>
<DayPlusOneTtl>0</DayPlusOneTtl>
<DayPlusTwoTtl>0</DayPlusTwoTtl>
</UnticketedBookingsByTau>
<OutstandingBookingActions>
<DayPlusZeroTtl>0</DayPlusZeroTtl>
<DayPlusOneTtl>0</DayPlusOneTtl>
<DayPlusTwoTtl>0</DayPlusTwoTtl>
</OutstandingBookingActions>
<MonthlyActivity>
<MonthlyActivityBreakdown>
<ReportDate>String</ReportDate>
<MonthlyEvents>0</MonthlyEvents>
<C>0</C>
<C_Percentage>0</C_Percentage>
<I>0</I>
<I_Percentage>0</I_Percentage>
<T>0</T>
<T_Percentage>0</T_Percentage>
<X>0</X>
<X_Percentage>0</X_Percentage>
</MonthlyActivityBreakdown>
</MonthlyActivity>
<MostActiveUsers>
<UserActivity>
<UserName>String</UserName>
<FirstName>String</FirstName>
<LastName>String</LastName>
<UserID>0</UserID>
<UserFrequency>String</UserFrequency>
<ActivityMeasure>0</ActivityMeasure>
</UserActivity>
</MostActiveUsers>
<TopConsultants>
<ConsultantPerformance>
<Name>String</Name>
<Total>0</Total>
</ConsultantPerformance>
</TopConsultants>
<TopReports>
<ReportPerformance>
<Name>String</Name>
<UrlSlug>String</UrlSlug>
<Total>0</Total>
</ReportPerformance>
</TopReports>
<ActiveBookingsAirConversion>
<TotalTicketed>0</TotalTicketed>
<TotalUnticketed>0</TotalUnticketed>
</ActiveBookingsAirConversion>
<PassengerElements>
<PassengerContactElements>
<DateMonth>0</DateMonth>
<DateYear>0</DateYear>
<WithMobilePercent>0</WithMobilePercent>
<WithEmailPercent>0</WithEmailPercent>
<TotalWithMobile>0</TotalWithMobile>
<TotalWithEmail>0</TotalWithEmail>
<TotalCreated>0</TotalCreated>
</PassengerContactElements>
</PassengerElements>
<ReportUsageSummary>
<ReportPerformance>
<Name>String</Name>
<UrlSlug>String</UrlSlug>
<Total>0</Total>
</ReportPerformance>
</ReportUsageSummary>
<MonthlyActivityFormatted>String</MonthlyActivityFormatted>
<PassengerElementsFormatted>String</PassengerElementsFormatted>
</Item>
</ResponseReport>
<ResponseError>
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StatusCode>String</StatusCode>
<VerboseMessage>String</VerboseMessage>
</ResponseError>
</AgentivityResponse>