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 java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


open class ExecutiveDashboardRequest
{
    open var Period:String? = null
    open var Region:String? = null
    open var Fy:Int? = null
}

open class ExecutiveDashboardResponse
{
    open var ResponseStatus:ResponseStatus? = null
    open var Dashboard:ExecutiveDashboard? = null
}

open class ExecutiveDashboard
{
    open var Period:String? = null
    open var FromDate:Date? = null
    open var ToDate:Date? = null
    open var Fy:Int? = null
    open var Kpis:ArrayList<ExecKpi> = ArrayList<ExecKpi>()
    open var CostVsBilling:ArrayList<ExecCostCategory> = ArrayList<ExecCostCategory>()
    open var Monthly:ArrayList<ExecMonthPoint> = ArrayList<ExecMonthPoint>()
    open var Backlog:ExecBacklog? = null
    open var Wip:ArrayList<ExecWipRow> = ArrayList<ExecWipRow>()
    open var Pipeline:ArrayList<ExecPipelineStage> = ArrayList<ExecPipelineStage>()
    open var WinRatePct:Double? = null
    open var Receivables:ArrayList<ExecAgingBucket> = ArrayList<ExecAgingBucket>()
    open var RetainageUSD:Double? = null
    open var DsoDays:Int? = null
    open var Safety:ArrayList<ExecSafetyMetric> = ArrayList<ExecSafetyMetric>()
}

open class ExecKpi
{
    open var Key:String? = null
    open var Label:String? = null
    open var Value:String? = null
    open var Sub_:String? = null
    open var Delta:String? = null
    open var DeltaUp:Boolean? = null
    open var HasDelta:Boolean? = null
    open var Good:Boolean? = null
}

open class ExecCostCategory
{
    open var Name:String? = null
    open var CostUSD:Double? = null
    open var BilledUSD:Double? = null
}

open class ExecMonthPoint
{
    open var Month:String? = null
    open var RevenueUSD:Double? = null
    open var CostUSD:Double? = null
}

open class ExecBacklog
{
    open var TotalUSD:Double? = null
    open var MonthsAhead:Double? = null
    open var AwardsYtdUSD:Double? = null
    open var BurnYtdUSD:Double? = null
    open var ByYear:ArrayList<ExecBacklogYear> = ArrayList<ExecBacklogYear>()
}

open class ExecBacklogYear
{
    open var Year:String? = null
    open var ValueUSD:Double? = null
}

open class ExecWipRow
{
    open var ContractId:Int? = null
    open var Name:String? = null
    open var Owner:String? = null
    open var ValueUSD:Double? = null
    open var PctComplete:Double? = null
    open var BilledUSD:Double? = null
    open var OverUnderUSD:Double? = null
    open var MarginPct:Double? = null
    open var FadePts:Double? = null
}

open class ExecPipelineStage
{
    open var Stage:String? = null
    open var ValueUSD:Double? = null
    open var Count:Int? = null
}

open class ExecAgingBucket
{
    open var Bucket:String? = null
    open var AmountUSD:Double? = null
    open var IsRetainage:Boolean? = null
}

open class ExecSafetyMetric
{
    open var Label:String? = null
    open var Value:String? = null
    open var Sub_:String? = null
    open var Good:Boolean? = null
}

Kotlin 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
			}
		]
	}
}