POST | /v1/motability/pricing | Gets the motability pricing information for the current user role | Gets the motability pricing information for the current user role |
---|
import 'package:servicestack/servicestack.dart';
class GetMotabilityPricingRequest implements IConvertible
{
GetMotabilityPricingRequest();
GetMotabilityPricingRequest.fromJson(Map<String, dynamic> json) : super();
fromMap(Map<String, dynamic> json) {
return this;
}
Map<String, dynamic> toJson() => {};
getTypeName() => "GetMotabilityPricingRequest";
TypeContext? context = _ctx;
}
class MotabilityPricingCsv implements IConvertible
{
// @DataMember(Order=0)
int? Id;
// @DataMember(Order=1)
String? CriteriaBM7NST;
// @DataMember(Order=2)
String? VTN;
// @DataMember(Order=3)
String? BackOrderDropDown;
// @DataMember(Order=4)
String? CriteriaFullModelYearCode;
// @DataMember(Order=5)
String? CriteriaValidOptionCodes;
// @DataMember(Order=6)
String? CriteriaInvalidOptionCodes;
// @DataMember(Order=7)
double? PIPNet;
// @DataMember(Order=8)
double? PIPVat;
// @DataMember(Order=9)
double? PIPGross;
// @DataMember(Order=10)
double? WPMSNet;
// @DataMember(Order=11)
double? WPMSVat;
// @DataMember(Order=12)
double? WPMSGross;
// @DataMember(Order=13)
double? DiscountNet;
// @DataMember(Order=14)
double? DiscountVat;
// @DataMember(Order=15)
double? DiscountGross;
// @DataMember(Order=16)
double? ListPriceNet;
// @DataMember(Order=17)
double? ListPriceVat;
// @DataMember(Order=18)
double? ListPriceGross;
// @DataMember(Order=19)
double? DeliveryChargeNet;
// @DataMember(Order=20)
double? DeliveryChargeVat;
// @DataMember(Order=21)
double? DeliveryChargeGross;
// @DataMember(Order=22)
double? FuelChargeNet;
// @DataMember(Order=23)
double? FuelChargeVat;
// @DataMember(Order=24)
double? FuelChargeGross;
// @DataMember(Order=25)
double? NumberPlateFeeNet;
// @DataMember(Order=26)
double? NumberPlateFeeVat;
// @DataMember(Order=27)
double? NumberPlateFeeGross;
// @DataMember(Order=28)
double? FirstRegistrationFeeNet;
// @DataMember(Order=29)
double? FirstRegistrationFeeVat;
// @DataMember(Order=30)
double? FirstRegistrationFeeGross;
// @DataMember(Order=31)
double? RoadFundLicenceNet;
// @DataMember(Order=32)
double? RoadFundLicenceVat;
// @DataMember(Order=33)
double? RoadFundLicenceGross;
// @DataMember(Order=34)
DateTime? ValidFrom;
// @DataMember(Order=35)
DateTime? ValidTo;
MotabilityPricingCsv({this.Id,this.CriteriaBM7NST,this.VTN,this.BackOrderDropDown,this.CriteriaFullModelYearCode,this.CriteriaValidOptionCodes,this.CriteriaInvalidOptionCodes,this.PIPNet,this.PIPVat,this.PIPGross,this.WPMSNet,this.WPMSVat,this.WPMSGross,this.DiscountNet,this.DiscountVat,this.DiscountGross,this.ListPriceNet,this.ListPriceVat,this.ListPriceGross,this.DeliveryChargeNet,this.DeliveryChargeVat,this.DeliveryChargeGross,this.FuelChargeNet,this.FuelChargeVat,this.FuelChargeGross,this.NumberPlateFeeNet,this.NumberPlateFeeVat,this.NumberPlateFeeGross,this.FirstRegistrationFeeNet,this.FirstRegistrationFeeVat,this.FirstRegistrationFeeGross,this.RoadFundLicenceNet,this.RoadFundLicenceVat,this.RoadFundLicenceGross,this.ValidFrom,this.ValidTo});
MotabilityPricingCsv.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
CriteriaBM7NST = json['CriteriaBM7NST'];
VTN = json['VTN'];
BackOrderDropDown = json['BackOrderDropDown'];
CriteriaFullModelYearCode = json['CriteriaFullModelYearCode'];
CriteriaValidOptionCodes = json['CriteriaValidOptionCodes'];
CriteriaInvalidOptionCodes = json['CriteriaInvalidOptionCodes'];
PIPNet = JsonConverters.toDouble(json['PIPNet']);
PIPVat = JsonConverters.toDouble(json['PIPVat']);
PIPGross = JsonConverters.toDouble(json['PIPGross']);
WPMSNet = JsonConverters.toDouble(json['WPMSNet']);
WPMSVat = JsonConverters.toDouble(json['WPMSVat']);
WPMSGross = JsonConverters.toDouble(json['WPMSGross']);
DiscountNet = JsonConverters.toDouble(json['DiscountNet']);
DiscountVat = JsonConverters.toDouble(json['DiscountVat']);
DiscountGross = JsonConverters.toDouble(json['DiscountGross']);
ListPriceNet = JsonConverters.toDouble(json['ListPriceNet']);
ListPriceVat = JsonConverters.toDouble(json['ListPriceVat']);
ListPriceGross = JsonConverters.toDouble(json['ListPriceGross']);
DeliveryChargeNet = JsonConverters.toDouble(json['DeliveryChargeNet']);
DeliveryChargeVat = JsonConverters.toDouble(json['DeliveryChargeVat']);
DeliveryChargeGross = JsonConverters.toDouble(json['DeliveryChargeGross']);
FuelChargeNet = JsonConverters.toDouble(json['FuelChargeNet']);
FuelChargeVat = JsonConverters.toDouble(json['FuelChargeVat']);
FuelChargeGross = JsonConverters.toDouble(json['FuelChargeGross']);
NumberPlateFeeNet = JsonConverters.toDouble(json['NumberPlateFeeNet']);
NumberPlateFeeVat = JsonConverters.toDouble(json['NumberPlateFeeVat']);
NumberPlateFeeGross = JsonConverters.toDouble(json['NumberPlateFeeGross']);
FirstRegistrationFeeNet = JsonConverters.toDouble(json['FirstRegistrationFeeNet']);
FirstRegistrationFeeVat = JsonConverters.toDouble(json['FirstRegistrationFeeVat']);
FirstRegistrationFeeGross = JsonConverters.toDouble(json['FirstRegistrationFeeGross']);
RoadFundLicenceNet = JsonConverters.toDouble(json['RoadFundLicenceNet']);
RoadFundLicenceVat = JsonConverters.toDouble(json['RoadFundLicenceVat']);
RoadFundLicenceGross = JsonConverters.toDouble(json['RoadFundLicenceGross']);
ValidFrom = JsonConverters.fromJson(json['ValidFrom'],'DateTime',context!);
ValidTo = JsonConverters.fromJson(json['ValidTo'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'CriteriaBM7NST': CriteriaBM7NST,
'VTN': VTN,
'BackOrderDropDown': BackOrderDropDown,
'CriteriaFullModelYearCode': CriteriaFullModelYearCode,
'CriteriaValidOptionCodes': CriteriaValidOptionCodes,
'CriteriaInvalidOptionCodes': CriteriaInvalidOptionCodes,
'PIPNet': PIPNet,
'PIPVat': PIPVat,
'PIPGross': PIPGross,
'WPMSNet': WPMSNet,
'WPMSVat': WPMSVat,
'WPMSGross': WPMSGross,
'DiscountNet': DiscountNet,
'DiscountVat': DiscountVat,
'DiscountGross': DiscountGross,
'ListPriceNet': ListPriceNet,
'ListPriceVat': ListPriceVat,
'ListPriceGross': ListPriceGross,
'DeliveryChargeNet': DeliveryChargeNet,
'DeliveryChargeVat': DeliveryChargeVat,
'DeliveryChargeGross': DeliveryChargeGross,
'FuelChargeNet': FuelChargeNet,
'FuelChargeVat': FuelChargeVat,
'FuelChargeGross': FuelChargeGross,
'NumberPlateFeeNet': NumberPlateFeeNet,
'NumberPlateFeeVat': NumberPlateFeeVat,
'NumberPlateFeeGross': NumberPlateFeeGross,
'FirstRegistrationFeeNet': FirstRegistrationFeeNet,
'FirstRegistrationFeeVat': FirstRegistrationFeeVat,
'FirstRegistrationFeeGross': FirstRegistrationFeeGross,
'RoadFundLicenceNet': RoadFundLicenceNet,
'RoadFundLicenceVat': RoadFundLicenceVat,
'RoadFundLicenceGross': RoadFundLicenceGross,
'ValidFrom': JsonConverters.toJson(ValidFrom,'DateTime',context!),
'ValidTo': JsonConverters.toJson(ValidTo,'DateTime',context!)
};
getTypeName() => "MotabilityPricingCsv";
TypeContext? context = _ctx;
}
enum MotabilityPricingStatus
{
Pending,
Current,
RecentlyExpired,
Expired,
}
class MotabilityPricing extends MotabilityPricingCsv implements IConvertible
{
MotabilityPricingStatus? MotabilityPricingStatus;
MotabilityPricing({this.MotabilityPricingStatus});
MotabilityPricing.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
MotabilityPricingStatus = JsonConverters.fromJson(json['MotabilityPricingStatus'],'MotabilityPricingStatus',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'MotabilityPricingStatus': JsonConverters.toJson(MotabilityPricingStatus,'MotabilityPricingStatus',context!)
});
getTypeName() => "MotabilityPricing";
TypeContext? context = _ctx;
}
class GetMotabilityPricingResponse implements IConvertible
{
List<MotabilityPricing>? MotabilityPricing = [];
GetMotabilityPricingResponse({this.MotabilityPricing});
GetMotabilityPricingResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
MotabilityPricing = JsonConverters.fromJson(json['MotabilityPricing'],'List<MotabilityPricing>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'MotabilityPricing': JsonConverters.toJson(MotabilityPricing,'List<MotabilityPricing>',context!)
};
getTypeName() => "GetMotabilityPricingResponse";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'prod_api_agency_orch_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
'GetMotabilityPricingRequest': TypeInfo(TypeOf.Class, create:() => GetMotabilityPricingRequest()),
'MotabilityPricingCsv': TypeInfo(TypeOf.Class, create:() => MotabilityPricingCsv()),
'MotabilityPricingStatus': TypeInfo(TypeOf.Enum, enumValues:MotabilityPricingStatus.values),
'MotabilityPricing': TypeInfo(TypeOf.Class, create:() => MotabilityPricing()),
'GetMotabilityPricingResponse': TypeInfo(TypeOf.Class, create:() => GetMotabilityPricingResponse()),
'List<MotabilityPricing>': TypeInfo(TypeOf.Class, create:() => <MotabilityPricing>[]),
});
Dart GetMotabilityPricingRequest DTOs
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.
POST /v1/motability/pricing HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {Unable to show example output for type 'GetMotabilityPricingResponse' using the custom 'csv' filter}Cannot dynamically create an instance of type 'Mercedes.Agency.API.Shared.POCO.Motability.Responses.GetMotabilityPricingResponse'. Reason: No parameterless constructor defined.