Trendsic Platform Service

<back to all web services

ExecutiveDashboardRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/dashboards/executive

export class ExecKpi
{
    public Key: string;
    public Label: string;
    public Value: string;
    public Sub_: string;
    public Delta: string;
    public DeltaUp: boolean;
    public HasDelta: boolean;
    public Good: boolean;

    public constructor(init?: Partial<ExecKpi>) { (Object as any).assign(this, init); }
}

export class ExecCostCategory
{
    public Name: string;
    public CostUSD: number;
    public BilledUSD: number;

    public constructor(init?: Partial<ExecCostCategory>) { (Object as any).assign(this, init); }
}

export class ExecMonthPoint
{
    public Month: string;
    public RevenueUSD: number;
    public CostUSD: number;

    public constructor(init?: Partial<ExecMonthPoint>) { (Object as any).assign(this, init); }
}

export class ExecBacklogYear
{
    public Year: string;
    public ValueUSD: number;

    public constructor(init?: Partial<ExecBacklogYear>) { (Object as any).assign(this, init); }
}

export class ExecBacklog
{
    public TotalUSD: number;
    public MonthsAhead: number;
    public AwardsYtdUSD: number;
    public BurnYtdUSD: number;
    public ByYear: ExecBacklogYear[] = [];

    public constructor(init?: Partial<ExecBacklog>) { (Object as any).assign(this, init); }
}

export class ExecWipRow
{
    public ContractId: number;
    public Name: string;
    public Owner: string;
    public ValueUSD: number;
    public PctComplete: number;
    public BilledUSD: number;
    public OverUnderUSD: number;
    public MarginPct: number;
    public FadePts: number;

    public constructor(init?: Partial<ExecWipRow>) { (Object as any).assign(this, init); }
}

export class ExecPipelineStage
{
    public Stage: string;
    public ValueUSD: number;
    public Count: number;

    public constructor(init?: Partial<ExecPipelineStage>) { (Object as any).assign(this, init); }
}

export class ExecAgingBucket
{
    public Bucket: string;
    public AmountUSD: number;
    public IsRetainage: boolean;

    public constructor(init?: Partial<ExecAgingBucket>) { (Object as any).assign(this, init); }
}

export class ExecSafetyMetric
{
    public Label: string;
    public Value: string;
    public Sub_: string;
    public Good: boolean;

    public constructor(init?: Partial<ExecSafetyMetric>) { (Object as any).assign(this, init); }
}

export class ExecutiveDashboard
{
    public Period: string;
    public FromDate: string;
    public ToDate: string;
    public Fy: number;
    public Kpis: ExecKpi[] = [];
    public CostVsBilling: ExecCostCategory[] = [];
    public Monthly: ExecMonthPoint[] = [];
    public Backlog: ExecBacklog;
    public Wip: ExecWipRow[] = [];
    public Pipeline: ExecPipelineStage[] = [];
    public WinRatePct: number;
    public Receivables: ExecAgingBucket[] = [];
    public RetainageUSD: number;
    public DsoDays: number;
    public Safety: ExecSafetyMetric[] = [];

    public constructor(init?: Partial<ExecutiveDashboard>) { (Object as any).assign(this, init); }
}

export class ExecutiveDashboardResponse
{
    public ResponseStatus: ResponseStatus;
    public Dashboard: ExecutiveDashboard;

    public constructor(init?: Partial<ExecutiveDashboardResponse>) { (Object as any).assign(this, init); }
}

export class ExecutiveDashboardRequest
{
    public Period: string;
    public Region: string;
    public Fy?: number;

    public constructor(init?: Partial<ExecutiveDashboardRequest>) { (Object as any).assign(this, init); }
}

TypeScript ExecutiveDashboardRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

GET /v1/dashboards/executive HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Dashboard":{"Period":"String","FromDate":"0001-01-01T00:00:00.0000000","ToDate":"0001-01-01T00:00:00.0000000","Fy":0,"Kpis":[{"Key":"String","Label":"String","Value":"String","Sub_":"String","Delta":"String","DeltaUp":false,"HasDelta":false,"Good":false}],"CostVsBilling":[{"Name":"String","CostUSD":0,"BilledUSD":0}],"Monthly":[{"Month":"String","RevenueUSD":0,"CostUSD":0}],"Backlog":{"TotalUSD":0,"MonthsAhead":0,"AwardsYtdUSD":0,"BurnYtdUSD":0,"ByYear":[{"Year":"String","ValueUSD":0}]},"Wip":[{"ContractId":0,"Name":"String","Owner":"String","ValueUSD":0,"PctComplete":0,"BilledUSD":0,"OverUnderUSD":0,"MarginPct":0,"FadePts":0}],"Pipeline":[{"Stage":"String","ValueUSD":0,"Count":0}],"WinRatePct":0,"Receivables":[{"Bucket":"String","AmountUSD":0,"IsRetainage":false}],"RetainageUSD":0,"DsoDays":0,"Safety":[{"Label":"String","Value":"String","Sub_":"String","Good":false}]}}