| GET,OPTIONS | /v1/project/{ProjectUID}/quote-scope |
|---|
import 'package:servicestack/servicestack.dart';
class QuoteScopeItem implements IConvertible
{
String? ItemType;
int? SourceRefId;
int? JobID;
String? JobName;
String? Name;
double? Quantity;
double? UnitPrice;
QuoteScopeItem({this.ItemType,this.SourceRefId,this.JobID,this.JobName,this.Name,this.Quantity,this.UnitPrice});
QuoteScopeItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ItemType = json['ItemType'];
SourceRefId = json['SourceRefId'];
JobID = json['JobID'];
JobName = json['JobName'];
Name = json['Name'];
Quantity = JsonConverters.toDouble(json['Quantity']);
UnitPrice = JsonConverters.toDouble(json['UnitPrice']);
return this;
}
Map<String, dynamic> toJson() => {
'ItemType': ItemType,
'SourceRefId': SourceRefId,
'JobID': JobID,
'JobName': JobName,
'Name': Name,
'Quantity': Quantity,
'UnitPrice': UnitPrice
};
getTypeName() => "QuoteScopeItem";
TypeContext? context = _ctx;
}
class QuoteScopeResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
List<QuoteScopeItem>? ScopeItems = [];
QuoteScopeResponse({this.ResponseStatus,this.ScopeItems});
QuoteScopeResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
ScopeItems = JsonConverters.fromJson(json['ScopeItems'],'List<QuoteScopeItem>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'ScopeItems': JsonConverters.toJson(ScopeItems,'List<QuoteScopeItem>',context!)
};
getTypeName() => "QuoteScopeResponse";
TypeContext? context = _ctx;
}
class QuoteScopeRequest implements IConvertible
{
String? ProjectUID;
QuoteScopeRequest({this.ProjectUID});
QuoteScopeRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ProjectUID = json['ProjectUID'];
return this;
}
Map<String, dynamic> toJson() => {
'ProjectUID': ProjectUID
};
getTypeName() => "QuoteScopeRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'QuoteScopeItem': TypeInfo(TypeOf.Class, create:() => QuoteScopeItem()),
'QuoteScopeResponse': TypeInfo(TypeOf.Class, create:() => QuoteScopeResponse()),
'List<QuoteScopeItem>': TypeInfo(TypeOf.Class, create:() => <QuoteScopeItem>[]),
'QuoteScopeRequest': TypeInfo(TypeOf.Class, create:() => QuoteScopeRequest()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/project/{ProjectUID}/quote-scope HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"ScopeItems":[{"ItemType":"String","SourceRefId":0,"JobID":0,"JobName":"String","Name":"String","Quantity":0,"UnitPrice":0}]}