Trendsic Platform Service

<back to all web services

ExecutiveDashboardRequest

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

public class ExecutiveDashboardRequest : Codable
{
    public var period:String
    public var region:String
    public var fy:Int?

    required public init(){}
}

public class ExecutiveDashboardResponse : Codable
{
    public var responseStatus:ResponseStatus
    public var dashboard:ExecutiveDashboard

    required public init(){}
}

public class ExecutiveDashboard : Codable
{
    public var period:String
    public var fromDate:Date
    public var toDate:Date
    public var fy:Int
    public var kpis:[ExecKpi] = []
    public var costVsBilling:[ExecCostCategory] = []
    public var monthly:[ExecMonthPoint] = []
    public var backlog:ExecBacklog
    public var wip:[ExecWipRow] = []
    public var pipeline:[ExecPipelineStage] = []
    public var winRatePct:Double
    public var receivables:[ExecAgingBucket] = []
    public var retainageUSD:Double
    public var dsoDays:Int
    public var safety:[ExecSafetyMetric] = []

    required public init(){}
}

public class ExecKpi : Codable
{
    public var key:String
    public var label:String
    public var value:String
    public var sub_:String
    public var delta:String
    public var deltaUp:Bool
    public var hasDelta:Bool
    public var good:Bool

    required public init(){}
}

public class ExecCostCategory : Codable
{
    public var name:String
    public var costUSD:Double
    public var billedUSD:Double

    required public init(){}
}

public class ExecMonthPoint : Codable
{
    public var month:String
    public var revenueUSD:Double
    public var costUSD:Double

    required public init(){}
}

public class ExecBacklog : Codable
{
    public var totalUSD:Double
    public var monthsAhead:Double
    public var awardsYtdUSD:Double
    public var burnYtdUSD:Double
    public var byYear:[ExecBacklogYear] = []

    required public init(){}
}

public class ExecBacklogYear : Codable
{
    public var year:String
    public var valueUSD:Double

    required public init(){}
}

public class ExecWipRow : Codable
{
    public var contractId:Int
    public var name:String
    public var owner:String
    public var valueUSD:Double
    public var pctComplete:Double
    public var billedUSD:Double
    public var overUnderUSD:Double
    public var marginPct:Double
    public var fadePts:Double

    required public init(){}
}

public class ExecPipelineStage : Codable
{
    public var stage:String
    public var valueUSD:Double
    public var count:Int

    required public init(){}
}

public class ExecAgingBucket : Codable
{
    public var bucket:String
    public var amountUSD:Double
    public var isRetainage:Bool

    required public init(){}
}

public class ExecSafetyMetric : Codable
{
    public var label:String
    public var value:String
    public var sub_:String
    public var good:Bool

    required public init(){}
}


Swift ExecutiveDashboardRequest DTOs

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

HTTP + JSV

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: 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
		}
	},
	Dashboard: 
	{
		Period: String,
		FromDate: 0001-01-01,
		ToDate: 0001-01-01,
		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
			}
		]
	}
}