| Requires any of the roles: | Agent, Administrator |
| GET,OPTIONS | /v1/report/metrics |
|---|
import 'package:servicestack/servicestack.dart';
class ReportMetricComponentDto implements IConvertible
{
String? Field;
String? Agg;
ReportMetricComponentDto({this.Field,this.Agg});
ReportMetricComponentDto.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Field = json['Field'];
Agg = json['Agg'];
return this;
}
Map<String, dynamic> toJson() => {
'Field': Field,
'Agg': Agg
};
getTypeName() => "ReportMetricComponentDto";
TypeContext? context = _ctx;
}
class ReportMetricDto implements IConvertible
{
String? Code;
String? Name;
String? Description;
String? Unit;
String? Status;
String? Base;
String? Op;
List<ReportMetricComponentDto>? Components = [];
List<String>? Joins = [];
ReportMetricDto({this.Code,this.Name,this.Description,this.Unit,this.Status,this.Base,this.Op,this.Components,this.Joins});
ReportMetricDto.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Code = json['Code'];
Name = json['Name'];
Description = json['Description'];
Unit = json['Unit'];
Status = json['Status'];
Base = json['Base'];
Op = json['Op'];
Components = JsonConverters.fromJson(json['Components'],'List<ReportMetricComponentDto>',context!);
Joins = JsonConverters.fromJson(json['Joins'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Code': Code,
'Name': Name,
'Description': Description,
'Unit': Unit,
'Status': Status,
'Base': Base,
'Op': Op,
'Components': JsonConverters.toJson(Components,'List<ReportMetricComponentDto>',context!),
'Joins': JsonConverters.toJson(Joins,'List<String>',context!)
};
getTypeName() => "ReportMetricDto";
TypeContext? context = _ctx;
}
class ReportMetricsResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
List<ReportMetricDto>? Metrics = [];
ReportMetricsResponse({this.ResponseStatus,this.Metrics});
ReportMetricsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
Metrics = JsonConverters.fromJson(json['Metrics'],'List<ReportMetricDto>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'Metrics': JsonConverters.toJson(Metrics,'List<ReportMetricDto>',context!)
};
getTypeName() => "ReportMetricsResponse";
TypeContext? context = _ctx;
}
class ReportMetricsRequest implements IConvertible
{
ReportMetricsRequest();
ReportMetricsRequest.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "ReportMetricsRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'ReportMetricComponentDto': TypeInfo(TypeOf.Class, create:() => ReportMetricComponentDto()),
'ReportMetricDto': TypeInfo(TypeOf.Class, create:() => ReportMetricDto()),
'List<ReportMetricComponentDto>': TypeInfo(TypeOf.Class, create:() => <ReportMetricComponentDto>[]),
'ReportMetricsResponse': TypeInfo(TypeOf.Class, create:() => ReportMetricsResponse()),
'List<ReportMetricDto>': TypeInfo(TypeOf.Class, create:() => <ReportMetricDto>[]),
'ReportMetricsRequest': TypeInfo(TypeOf.Class, create:() => ReportMetricsRequest()),
});
Dart ReportMetricsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/report/metrics 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
}
},
Metrics:
[
{
Code: String,
Name: String,
Description: String,
Unit: String,
Status: String,
Base: String,
Op: String,
Components:
[
{
Field: String,
Agg: String
}
],
Joins:
[
String
]
}
]
}