Trendsic Platform Service

<back to all web services

KpiV2Request

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/dashboard/kpiv2
"use strict";
export class DashboardStatTile {
    /** @param {{Key?:string,Label?:string,Value?:number,PreviousValue?:number,Unit?:string,DeltaPct?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Key;
    /** @type {string} */
    Label;
    /** @type {number} */
    Value;
    /** @type {?number} */
    PreviousValue;
    /** @type {string} */
    Unit;
    /** @type {?number} */
    DeltaPct;
}
export class DashboardSeriesPoint {
    /** @param {{Label?:string,Value?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Label;
    /** @type {number} */
    Value;
}
export class DashboardSeries {
    /** @param {{Name?:string,Points?:DashboardSeriesPoint[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Name;
    /** @type {DashboardSeriesPoint[]} */
    Points = [];
}
export class KpiV2LocationRow {
    /** @param {{LocationName?:string,Walkins?:number,Completed?:number,AvgServiceMinutes?:number,AbandonmentPct?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    LocationName;
    /** @type {number} */
    Walkins;
    /** @type {number} */
    Completed;
    /** @type {number} */
    AvgServiceMinutes;
    /** @type {number} */
    AbandonmentPct;
}
export class KpiV2WorkerRow {
    /** @param {{WorkerName?:string,Completed?:number,AvgServiceMinutes?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    WorkerName;
    /** @type {number} */
    Completed;
    /** @type {number} */
    AvgServiceMinutes;
}
export class KpiV2HeatPoint {
    /** @param {{Dow?:number,Hr?:number,Cnt?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Dow;
    /** @type {number} */
    Hr;
    /** @type {number} */
    Cnt;
}
export class KpiV2LiveRow {
    /** @param {{LocationName?:string,Waiting?:number,InProgress?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    LocationName;
    /** @type {number} */
    Waiting;
    /** @type {number} */
    InProgress;
}
export class SvcNamedTime {
    /** @param {{Id?:string,Name?:string,SignedSec?:number,Served?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Id;
    /** @type {string} */
    Name;
    /** @type {number} */
    SignedSec;
    /** @type {number} */
    Served;
}
export class SvcTint {
    /** @param {{Field?:string,Tone?:string,Reason?:string,Value?:number,Reference?:number,BranchValue?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Field;
    /** @type {string} */
    Tone;
    /** @type {string} */
    Reason;
    /** @type {?number} */
    Value;
    /** @type {?number} */
    Reference;
    /** @type {?number} */
    BranchValue;
}
export class SvcMetrics {
    /** @param {{Checkins?:number,Walkins?:number,Appts?:number,Served?:number,NoShows?:number,ApptNoShows?:number,CancelledAtWindow?:number,Abandoned?:number,Called?:number,CalledUp?:number,AbandonRate?:number,NoShowRate?:number,AvgServiceSec?:number,MedianServiceSec?:number,AvgWaitSec?:number,MaxWaitSec?:number,AvgWalkUpSec?:number,ExpectedServiceSec?:number,SignedSec?:number,ServingSec?:number,PausedSec?:number,IdleSec?:number,UnstaffedSec?:number,Utilization?:number,IdleShare?:number,PausedShare?:number,Sessions?:number,OpenDays?:number,FeesEarned?:number,AvgFee?:number,FeesPerStaffedHour?:number,ExpectedFeesPerStaffedHour?:number,LaborCost?:number,LaborPartial?:boolean,MissingCostEmployeeIds?:string[],MissingCost?:SvcNamedTime[],LaborLocked?:boolean,Contribution?:number,LostFees?:number,LostNoShowFees?:number,Mix?:{ [index:string]: number; },HourlyServed?:number[],HourlyFees?:number[],HourlyCost?:number[],Tints?:SvcTint[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Checkins;
    /** @type {number} */
    Walkins;
    /** @type {number} */
    Appts;
    /** @type {number} */
    Served;
    /** @type {number} */
    NoShows;
    /** @type {number} */
    ApptNoShows;
    /** @type {number} */
    CancelledAtWindow;
    /** @type {number} */
    Abandoned;
    /** @type {number} */
    Called;
    /** @type {number} */
    CalledUp;
    /** @type {?number} */
    AbandonRate;
    /** @type {?number} */
    NoShowRate;
    /** @type {?number} */
    AvgServiceSec;
    /** @type {?number} */
    MedianServiceSec;
    /** @type {?number} */
    AvgWaitSec;
    /** @type {number} */
    MaxWaitSec;
    /** @type {?number} */
    AvgWalkUpSec;
    /** @type {?number} */
    ExpectedServiceSec;
    /** @type {number} */
    SignedSec;
    /** @type {number} */
    ServingSec;
    /** @type {number} */
    PausedSec;
    /** @type {number} */
    IdleSec;
    /** @type {number} */
    UnstaffedSec;
    /** @type {?number} */
    Utilization;
    /** @type {?number} */
    IdleShare;
    /** @type {?number} */
    PausedShare;
    /** @type {number} */
    Sessions;
    /** @type {number} */
    OpenDays;
    /** @type {?number} */
    FeesEarned;
    /** @type {?number} */
    AvgFee;
    /** @type {?number} */
    FeesPerStaffedHour;
    /** @type {?number} */
    ExpectedFeesPerStaffedHour;
    /** @type {?number} */
    LaborCost;
    /** @type {boolean} */
    LaborPartial;
    /** @type {string[]} */
    MissingCostEmployeeIds = [];
    /** @type {SvcNamedTime[]} */
    MissingCost = [];
    /** @type {boolean} */
    LaborLocked;
    /** @type {?number} */
    Contribution;
    /** @type {?number} */
    LostFees;
    /** @type {?number} */
    LostNoShowFees;
    /** @type {{ [index:string]: number; }} */
    Mix = {};
    /** @type {number[]} */
    HourlyServed = [];
    /** @type {number[]} */
    HourlyFees = [];
    /** @type {number[]} */
    HourlyCost = [];
    /** @type {SvcTint[]} */
    Tints = [];
}
export class SvcBranchRow {
    /** @param {{BranchId?:string,Name?:string,StateCode?:string,ZoneCode?:string,TimeZone?:string,Windows?:number,RecordingSinceUtc?:string,SessionsSinceUtc?:string,Metrics?:SvcMetrics}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    BranchId;
    /** @type {string} */
    Name;
    /** @type {string} */
    StateCode;
    /** @type {string} */
    ZoneCode;
    /** @type {string} */
    TimeZone;
    /** @type {number} */
    Windows;
    /** @type {?string} */
    RecordingSinceUtc;
    /** @type {?string} */
    SessionsSinceUtc;
    /** @type {SvcMetrics} */
    Metrics;
}
export class SvcStateRow {
    /** @param {{StateCode?:string,StateName?:string,Branches?:number,Metrics?:SvcMetrics}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    StateCode;
    /** @type {string} */
    StateName;
    /** @type {number} */
    Branches;
    /** @type {SvcMetrics} */
    Metrics;
}
export class SvcComparison {
    /** @param {{Mode?:string,FromDate?:string,ToDate?:string,CutoffMinute?:number,HasData?:boolean,Metrics?:SvcMetrics}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Mode;
    /** @type {?string} */
    FromDate;
    /** @type {?string} */
    ToDate;
    /** @type {?number} */
    CutoffMinute;
    /** @type {boolean} */
    HasData;
    /** @type {SvcMetrics} */
    Metrics;
}
export class SvcFeeChange {
    /** @param {{LocationId?:string,OnDate?:string,FromFee?:number,ToFee?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    LocationId;
    /** @type {string} */
    OnDate;
    /** @type {number} */
    FromFee;
    /** @type {number} */
    ToFee;
}
export class SvcServiceRow {
    /** @param {{LineId?:string,Name?:string,Completed?:number,AvgServiceSec?:number,BranchAvgServiceSec?:number,FeesEarned?:number,FeeCurrent?:number,FeeMin?:number,FeeMax?:number,FeePerMinute?:number,BranchFeePerMinute?:number,FeeChanges?:SvcFeeChange[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    LineId;
    /** @type {string} */
    Name;
    /** @type {number} */
    Completed;
    /** @type {?number} */
    AvgServiceSec;
    /** @type {?number} */
    BranchAvgServiceSec;
    /** @type {?number} */
    FeesEarned;
    /** @type {?number} */
    FeeCurrent;
    /** @type {?number} */
    FeeMin;
    /** @type {?number} */
    FeeMax;
    /** @type {?number} */
    FeePerMinute;
    /** @type {?number} */
    BranchFeePerMinute;
    /** @type {SvcFeeChange[]} */
    FeeChanges = [];
}
export class SvcHourRow {
    /** @param {{LocalHour?:number,Served?:number,FeesEarned?:number,CostToStaff?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    LocalHour;
    /** @type {number} */
    Served;
    /** @type {?number} */
    FeesEarned;
    /** @type {?number} */
    CostToStaff;
}
export class SvcWorkerRow {
    /** @param {{EmployeeId?:string,BranchId?:string,BranchName?:string,Name?:string,Served?:number,AvgServiceSec?:number,Utilization?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    EmployeeId;
    /** @type {string} */
    BranchId;
    /** @type {string} */
    BranchName;
    /** @type {string} */
    Name;
    /** @type {number} */
    Served;
    /** @type {?number} */
    AvgServiceSec;
    /** @type {?number} */
    Utilization;
}
export class SvcAlert {
    /** @param {{Level?:string,View?:string,Code?:string,StationId?:string,EmployeeId?:string,BranchId?:string,LineId?:string,Name?:string,OtherLineId?:string,OtherName?:string,StationIds?:string[],Values?:{ [index:string]: number; }}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Level;
    /** @type {string} */
    View;
    /** @type {string} */
    Code;
    /** @type {?string} */
    StationId;
    /** @type {?string} */
    EmployeeId;
    /** @type {?string} */
    BranchId;
    /** @type {?string} */
    LineId;
    /** @type {string} */
    Name;
    /** @type {?string} */
    OtherLineId;
    /** @type {string} */
    OtherName;
    /** @type {string[]} */
    StationIds = [];
    /** @type {{ [index:string]: number; }} */
    Values = {};
}
export class SvcScope {
    /** @param {{StateCode?:string,Branches?:SvcBranchRow[],States?:SvcStateRow[],Total?:SvcMetrics,Comparison?:SvcComparison,FeesByService?:SvcServiceRow[],ByHour?:SvcHourRow[],Workers?:SvcWorkerRow[],MultiZone?:boolean,MultiState?:boolean,RecordingSinceUtc?:string,SessionsSinceUtc?:string,Alerts?:SvcAlert[],CanSeeStaff?:boolean,CanSeeFinancial?:boolean,CanSeePay?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    StateCode;
    /** @type {SvcBranchRow[]} */
    Branches = [];
    /** @type {SvcStateRow[]} */
    States = [];
    /** @type {SvcMetrics} */
    Total;
    /** @type {SvcComparison} */
    Comparison;
    /** @type {SvcServiceRow[]} */
    FeesByService = [];
    /** @type {SvcHourRow[]} */
    ByHour = [];
    /** @type {SvcWorkerRow[]} */
    Workers = [];
    /** @type {boolean} */
    MultiZone;
    /** @type {boolean} */
    MultiState;
    /** @type {?string} */
    RecordingSinceUtc;
    /** @type {?string} */
    SessionsSinceUtc;
    /** @type {SvcAlert[]} */
    Alerts = [];
    /** @type {boolean} */
    CanSeeStaff;
    /** @type {boolean} */
    CanSeeFinancial;
    /** @type {boolean} */
    CanSeePay;
}
export class KpiV2Response {
    /** @param {{ResponseStatus?:ResponseStatus,Stats?:DashboardStatTile[],Trend?:DashboardSeries[],ServicesByType?:DashboardSeries,LocationLeaderboard?:KpiV2LocationRow[],WorkerProductivity?:KpiV2WorkerRow[],Heatmap?:KpiV2HeatPoint[],LiveQueue?:KpiV2LiveRow[],Scope?:SvcScope}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {ResponseStatus} */
    ResponseStatus;
    /** @type {DashboardStatTile[]} */
    Stats = [];
    /** @type {DashboardSeries[]} */
    Trend = [];
    /** @type {DashboardSeries} */
    ServicesByType;
    /** @type {KpiV2LocationRow[]} */
    LocationLeaderboard = [];
    /** @type {KpiV2WorkerRow[]} */
    WorkerProductivity = [];
    /** @type {KpiV2HeatPoint[]} */
    Heatmap = [];
    /** @type {KpiV2LiveRow[]} */
    LiveQueue = [];
    /** @type {SvcScope} */
    Scope;
}
export class KpiV2Request {
    /** @param {{FromDate?:string,ToDate?:string,LocationIds?:string[],IncludeScope?:boolean,StateCode?:string,Compare?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    FromDate;
    /** @type {string} */
    ToDate;
    /** @type {string[]} */
    LocationIds = [];
    /** @type {boolean} */
    IncludeScope;
    /** @type {string} */
    StateCode;
    /** @type {string} */
    Compare;
}

JavaScript KpiV2Request DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/dashboard/kpiv2 HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<KpiV2Request xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <Compare>String</Compare>
  <FromDate>0001-01-01T00:00:00</FromDate>
  <IncludeScope>false</IncludeScope>
  <LocationIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:guid>00000000-0000-0000-0000-000000000000</d2p1:guid>
  </LocationIds>
  <StateCode>String</StateCode>
  <ToDate>0001-01-01T00:00:00</ToDate>
</KpiV2Request>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<KpiV2Response xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <Heatmap>
    <KpiV2HeatPoint>
      <Cnt>0</Cnt>
      <Dow>0</Dow>
      <Hr>0</Hr>
    </KpiV2HeatPoint>
  </Heatmap>
  <LiveQueue>
    <KpiV2LiveRow>
      <InProgress>0</InProgress>
      <LocationName>String</LocationName>
      <Waiting>0</Waiting>
    </KpiV2LiveRow>
  </LiveQueue>
  <LocationLeaderboard>
    <KpiV2LocationRow>
      <AbandonmentPct>0</AbandonmentPct>
      <AvgServiceMinutes>0</AvgServiceMinutes>
      <Completed>0</Completed>
      <LocationName>String</LocationName>
      <Walkins>0</Walkins>
    </KpiV2LocationRow>
  </LocationLeaderboard>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <Scope>
    <Alerts>
      <SvcAlert>
        <BranchId>00000000-0000-0000-0000-000000000000</BranchId>
        <Code>String</Code>
        <EmployeeId>00000000-0000-0000-0000-000000000000</EmployeeId>
        <Level>String</Level>
        <LineId>00000000-0000-0000-0000-000000000000</LineId>
        <Name>String</Name>
        <OtherLineId>00000000-0000-0000-0000-000000000000</OtherLineId>
        <OtherName>String</OtherName>
        <StationId>00000000-0000-0000-0000-000000000000</StationId>
        <StationIds xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:guid>00000000-0000-0000-0000-000000000000</d5p1:guid>
        </StationIds>
        <Values xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringdouble>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>0</d5p1:Value>
          </d5p1:KeyValueOfstringdouble>
        </Values>
        <View>String</View>
      </SvcAlert>
    </Alerts>
    <Branches>
      <SvcBranchRow>
        <BranchId>00000000-0000-0000-0000-000000000000</BranchId>
        <Metrics>
          <AbandonRate>0</AbandonRate>
          <Abandoned>0</Abandoned>
          <ApptNoShows>0</ApptNoShows>
          <Appts>0</Appts>
          <AvgFee>0</AvgFee>
          <AvgServiceSec>0</AvgServiceSec>
          <AvgWaitSec>0</AvgWaitSec>
          <AvgWalkUpSec>0</AvgWalkUpSec>
          <Called>0</Called>
          <CalledUp>0</CalledUp>
          <CancelledAtWindow>0</CancelledAtWindow>
          <Checkins>0</Checkins>
          <Contribution>0</Contribution>
          <ExpectedFeesPerStaffedHour>0</ExpectedFeesPerStaffedHour>
          <ExpectedServiceSec>0</ExpectedServiceSec>
          <FeesEarned>0</FeesEarned>
          <FeesPerStaffedHour>0</FeesPerStaffedHour>
          <HourlyCost xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:decimal>0</d6p1:decimal>
          </HourlyCost>
          <HourlyFees xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:decimal>0</d6p1:decimal>
          </HourlyFees>
          <HourlyServed xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:int>0</d6p1:int>
          </HourlyServed>
          <IdleSec>0</IdleSec>
          <IdleShare>0</IdleShare>
          <LaborCost>0</LaborCost>
          <LaborLocked>false</LaborLocked>
          <LaborPartial>false</LaborPartial>
          <LostFees>0</LostFees>
          <LostNoShowFees>0</LostNoShowFees>
          <MaxWaitSec>0</MaxWaitSec>
          <MedianServiceSec>0</MedianServiceSec>
          <MissingCost>
            <SvcNamedTime>
              <Id>00000000-0000-0000-0000-000000000000</Id>
              <Name>String</Name>
              <Served>0</Served>
              <SignedSec>0</SignedSec>
            </SvcNamedTime>
          </MissingCost>
          <MissingCostEmployeeIds xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:guid>00000000-0000-0000-0000-000000000000</d6p1:guid>
          </MissingCostEmployeeIds>
          <Mix xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:KeyValueOfguidint>
              <d6p1:Key>00000000-0000-0000-0000-000000000000</d6p1:Key>
              <d6p1:Value>0</d6p1:Value>
            </d6p1:KeyValueOfguidint>
          </Mix>
          <NoShowRate>0</NoShowRate>
          <NoShows>0</NoShows>
          <OpenDays>0</OpenDays>
          <PausedSec>0</PausedSec>
          <PausedShare>0</PausedShare>
          <Served>0</Served>
          <ServingSec>0</ServingSec>
          <Sessions>0</Sessions>
          <SignedSec>0</SignedSec>
          <Tints>
            <SvcTint>
              <BranchValue>0</BranchValue>
              <Field>String</Field>
              <Reason>String</Reason>
              <Reference>0</Reference>
              <Tone>String</Tone>
              <Value>0</Value>
            </SvcTint>
          </Tints>
          <UnstaffedSec>0</UnstaffedSec>
          <Utilization>0</Utilization>
          <Walkins>0</Walkins>
        </Metrics>
        <Name>String</Name>
        <RecordingSinceUtc>0001-01-01T00:00:00</RecordingSinceUtc>
        <SessionsSinceUtc>0001-01-01T00:00:00</SessionsSinceUtc>
        <StateCode>String</StateCode>
        <TimeZone>String</TimeZone>
        <Windows>0</Windows>
        <ZoneCode>String</ZoneCode>
      </SvcBranchRow>
    </Branches>
    <ByHour>
      <SvcHourRow>
        <CostToStaff>0</CostToStaff>
        <FeesEarned>0</FeesEarned>
        <LocalHour>0</LocalHour>
        <Served>0</Served>
      </SvcHourRow>
    </ByHour>
    <CanSeeFinancial>false</CanSeeFinancial>
    <CanSeePay>false</CanSeePay>
    <CanSeeStaff>false</CanSeeStaff>
    <Comparison>
      <CutoffMinute>0</CutoffMinute>
      <FromDate>0001-01-01T00:00:00</FromDate>
      <HasData>false</HasData>
      <Metrics>
        <AbandonRate>0</AbandonRate>
        <Abandoned>0</Abandoned>
        <ApptNoShows>0</ApptNoShows>
        <Appts>0</Appts>
        <AvgFee>0</AvgFee>
        <AvgServiceSec>0</AvgServiceSec>
        <AvgWaitSec>0</AvgWaitSec>
        <AvgWalkUpSec>0</AvgWalkUpSec>
        <Called>0</Called>
        <CalledUp>0</CalledUp>
        <CancelledAtWindow>0</CancelledAtWindow>
        <Checkins>0</Checkins>
        <Contribution>0</Contribution>
        <ExpectedFeesPerStaffedHour>0</ExpectedFeesPerStaffedHour>
        <ExpectedServiceSec>0</ExpectedServiceSec>
        <FeesEarned>0</FeesEarned>
        <FeesPerStaffedHour>0</FeesPerStaffedHour>
        <HourlyCost xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:decimal>0</d5p1:decimal>
        </HourlyCost>
        <HourlyFees xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:decimal>0</d5p1:decimal>
        </HourlyFees>
        <HourlyServed xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:int>0</d5p1:int>
        </HourlyServed>
        <IdleSec>0</IdleSec>
        <IdleShare>0</IdleShare>
        <LaborCost>0</LaborCost>
        <LaborLocked>false</LaborLocked>
        <LaborPartial>false</LaborPartial>
        <LostFees>0</LostFees>
        <LostNoShowFees>0</LostNoShowFees>
        <MaxWaitSec>0</MaxWaitSec>
        <MedianServiceSec>0</MedianServiceSec>
        <MissingCost>
          <SvcNamedTime>
            <Id>00000000-0000-0000-0000-000000000000</Id>
            <Name>String</Name>
            <Served>0</Served>
            <SignedSec>0</SignedSec>
          </SvcNamedTime>
        </MissingCost>
        <MissingCostEmployeeIds xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:guid>00000000-0000-0000-0000-000000000000</d5p1:guid>
        </MissingCostEmployeeIds>
        <Mix xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfguidint>
            <d5p1:Key>00000000-0000-0000-0000-000000000000</d5p1:Key>
            <d5p1:Value>0</d5p1:Value>
          </d5p1:KeyValueOfguidint>
        </Mix>
        <NoShowRate>0</NoShowRate>
        <NoShows>0</NoShows>
        <OpenDays>0</OpenDays>
        <PausedSec>0</PausedSec>
        <PausedShare>0</PausedShare>
        <Served>0</Served>
        <ServingSec>0</ServingSec>
        <Sessions>0</Sessions>
        <SignedSec>0</SignedSec>
        <Tints>
          <SvcTint>
            <BranchValue>0</BranchValue>
            <Field>String</Field>
            <Reason>String</Reason>
            <Reference>0</Reference>
            <Tone>String</Tone>
            <Value>0</Value>
          </SvcTint>
        </Tints>
        <UnstaffedSec>0</UnstaffedSec>
        <Utilization>0</Utilization>
        <Walkins>0</Walkins>
      </Metrics>
      <Mode>String</Mode>
      <ToDate>0001-01-01T00:00:00</ToDate>
    </Comparison>
    <FeesByService>
      <SvcServiceRow>
        <AvgServiceSec>0</AvgServiceSec>
        <BranchAvgServiceSec>0</BranchAvgServiceSec>
        <BranchFeePerMinute>0</BranchFeePerMinute>
        <Completed>0</Completed>
        <FeeChanges>
          <SvcFeeChange>
            <FromFee>0</FromFee>
            <LocationId>00000000-0000-0000-0000-000000000000</LocationId>
            <OnDate>0001-01-01T00:00:00</OnDate>
            <ToFee>0</ToFee>
          </SvcFeeChange>
        </FeeChanges>
        <FeeCurrent>0</FeeCurrent>
        <FeeMax>0</FeeMax>
        <FeeMin>0</FeeMin>
        <FeePerMinute>0</FeePerMinute>
        <FeesEarned>0</FeesEarned>
        <LineId>00000000-0000-0000-0000-000000000000</LineId>
        <Name>String</Name>
      </SvcServiceRow>
    </FeesByService>
    <MultiState>false</MultiState>
    <MultiZone>false</MultiZone>
    <RecordingSinceUtc>0001-01-01T00:00:00</RecordingSinceUtc>
    <SessionsSinceUtc>0001-01-01T00:00:00</SessionsSinceUtc>
    <StateCode>String</StateCode>
    <States>
      <SvcStateRow>
        <Branches>0</Branches>
        <Metrics>
          <AbandonRate>0</AbandonRate>
          <Abandoned>0</Abandoned>
          <ApptNoShows>0</ApptNoShows>
          <Appts>0</Appts>
          <AvgFee>0</AvgFee>
          <AvgServiceSec>0</AvgServiceSec>
          <AvgWaitSec>0</AvgWaitSec>
          <AvgWalkUpSec>0</AvgWalkUpSec>
          <Called>0</Called>
          <CalledUp>0</CalledUp>
          <CancelledAtWindow>0</CancelledAtWindow>
          <Checkins>0</Checkins>
          <Contribution>0</Contribution>
          <ExpectedFeesPerStaffedHour>0</ExpectedFeesPerStaffedHour>
          <ExpectedServiceSec>0</ExpectedServiceSec>
          <FeesEarned>0</FeesEarned>
          <FeesPerStaffedHour>0</FeesPerStaffedHour>
          <HourlyCost xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:decimal>0</d6p1:decimal>
          </HourlyCost>
          <HourlyFees xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:decimal>0</d6p1:decimal>
          </HourlyFees>
          <HourlyServed xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:int>0</d6p1:int>
          </HourlyServed>
          <IdleSec>0</IdleSec>
          <IdleShare>0</IdleShare>
          <LaborCost>0</LaborCost>
          <LaborLocked>false</LaborLocked>
          <LaborPartial>false</LaborPartial>
          <LostFees>0</LostFees>
          <LostNoShowFees>0</LostNoShowFees>
          <MaxWaitSec>0</MaxWaitSec>
          <MedianServiceSec>0</MedianServiceSec>
          <MissingCost>
            <SvcNamedTime>
              <Id>00000000-0000-0000-0000-000000000000</Id>
              <Name>String</Name>
              <Served>0</Served>
              <SignedSec>0</SignedSec>
            </SvcNamedTime>
          </MissingCost>
          <MissingCostEmployeeIds xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:guid>00000000-0000-0000-0000-000000000000</d6p1:guid>
          </MissingCostEmployeeIds>
          <Mix xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:KeyValueOfguidint>
              <d6p1:Key>00000000-0000-0000-0000-000000000000</d6p1:Key>
              <d6p1:Value>0</d6p1:Value>
            </d6p1:KeyValueOfguidint>
          </Mix>
          <NoShowRate>0</NoShowRate>
          <NoShows>0</NoShows>
          <OpenDays>0</OpenDays>
          <PausedSec>0</PausedSec>
          <PausedShare>0</PausedShare>
          <Served>0</Served>
          <ServingSec>0</ServingSec>
          <Sessions>0</Sessions>
          <SignedSec>0</SignedSec>
          <Tints>
            <SvcTint>
              <BranchValue>0</BranchValue>
              <Field>String</Field>
              <Reason>String</Reason>
              <Reference>0</Reference>
              <Tone>String</Tone>
              <Value>0</Value>
            </SvcTint>
          </Tints>
          <UnstaffedSec>0</UnstaffedSec>
          <Utilization>0</Utilization>
          <Walkins>0</Walkins>
        </Metrics>
        <StateCode>String</StateCode>
        <StateName>String</StateName>
      </SvcStateRow>
    </States>
    <Total>
      <AbandonRate>0</AbandonRate>
      <Abandoned>0</Abandoned>
      <ApptNoShows>0</ApptNoShows>
      <Appts>0</Appts>
      <AvgFee>0</AvgFee>
      <AvgServiceSec>0</AvgServiceSec>
      <AvgWaitSec>0</AvgWaitSec>
      <AvgWalkUpSec>0</AvgWalkUpSec>
      <Called>0</Called>
      <CalledUp>0</CalledUp>
      <CancelledAtWindow>0</CancelledAtWindow>
      <Checkins>0</Checkins>
      <Contribution>0</Contribution>
      <ExpectedFeesPerStaffedHour>0</ExpectedFeesPerStaffedHour>
      <ExpectedServiceSec>0</ExpectedServiceSec>
      <FeesEarned>0</FeesEarned>
      <FeesPerStaffedHour>0</FeesPerStaffedHour>
      <HourlyCost xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:decimal>0</d4p1:decimal>
      </HourlyCost>
      <HourlyFees xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:decimal>0</d4p1:decimal>
      </HourlyFees>
      <HourlyServed xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:int>0</d4p1:int>
      </HourlyServed>
      <IdleSec>0</IdleSec>
      <IdleShare>0</IdleShare>
      <LaborCost>0</LaborCost>
      <LaborLocked>false</LaborLocked>
      <LaborPartial>false</LaborPartial>
      <LostFees>0</LostFees>
      <LostNoShowFees>0</LostNoShowFees>
      <MaxWaitSec>0</MaxWaitSec>
      <MedianServiceSec>0</MedianServiceSec>
      <MissingCost>
        <SvcNamedTime>
          <Id>00000000-0000-0000-0000-000000000000</Id>
          <Name>String</Name>
          <Served>0</Served>
          <SignedSec>0</SignedSec>
        </SvcNamedTime>
      </MissingCost>
      <MissingCostEmployeeIds xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:guid>00000000-0000-0000-0000-000000000000</d4p1:guid>
      </MissingCostEmployeeIds>
      <Mix xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:KeyValueOfguidint>
          <d4p1:Key>00000000-0000-0000-0000-000000000000</d4p1:Key>
          <d4p1:Value>0</d4p1:Value>
        </d4p1:KeyValueOfguidint>
      </Mix>
      <NoShowRate>0</NoShowRate>
      <NoShows>0</NoShows>
      <OpenDays>0</OpenDays>
      <PausedSec>0</PausedSec>
      <PausedShare>0</PausedShare>
      <Served>0</Served>
      <ServingSec>0</ServingSec>
      <Sessions>0</Sessions>
      <SignedSec>0</SignedSec>
      <Tints>
        <SvcTint>
          <BranchValue>0</BranchValue>
          <Field>String</Field>
          <Reason>String</Reason>
          <Reference>0</Reference>
          <Tone>String</Tone>
          <Value>0</Value>
        </SvcTint>
      </Tints>
      <UnstaffedSec>0</UnstaffedSec>
      <Utilization>0</Utilization>
      <Walkins>0</Walkins>
    </Total>
    <Workers>
      <SvcWorkerRow>
        <AvgServiceSec>0</AvgServiceSec>
        <BranchId>00000000-0000-0000-0000-000000000000</BranchId>
        <BranchName>String</BranchName>
        <EmployeeId>00000000-0000-0000-0000-000000000000</EmployeeId>
        <Name>String</Name>
        <Served>0</Served>
        <Utilization>0</Utilization>
      </SvcWorkerRow>
    </Workers>
  </Scope>
  <ServicesByType>
    <Name>String</Name>
    <Points>
      <DashboardSeriesPoint>
        <Label>String</Label>
        <Value>0</Value>
      </DashboardSeriesPoint>
    </Points>
  </ServicesByType>
  <Stats>
    <DashboardStatTile>
      <Key>String</Key>
      <Label>String</Label>
      <PreviousValue>0</PreviousValue>
      <Unit>String</Unit>
      <Value>0</Value>
    </DashboardStatTile>
  </Stats>
  <Trend>
    <DashboardSeries>
      <Name>String</Name>
      <Points>
        <DashboardSeriesPoint>
          <Label>String</Label>
          <Value>0</Value>
        </DashboardSeriesPoint>
      </Points>
    </DashboardSeries>
  </Trend>
  <WorkerProductivity>
    <KpiV2WorkerRow>
      <AvgServiceMinutes>0</AvgServiceMinutes>
      <Completed>0</Completed>
      <WorkerName>String</WorkerName>
    </KpiV2WorkerRow>
  </WorkerProductivity>
</KpiV2Response>