POST | /v1/VehicleWithOptimal | Get Vehicle by Vin and a more optimal option if available |
---|
import 'package:servicestack/servicestack.dart';
class GetVehicleWithOptimalRequest implements IConvertible
{
String? VehicleIdentifier;
bool? IncludeAllocatedToBackOrder;
String? Gssn;
bool? IsOneAdmin;
int? MotabilityPricingId;
GetVehicleWithOptimalRequest({this.VehicleIdentifier,this.IncludeAllocatedToBackOrder,this.Gssn,this.IsOneAdmin,this.MotabilityPricingId});
GetVehicleWithOptimalRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
VehicleIdentifier = json['VehicleIdentifier'];
IncludeAllocatedToBackOrder = json['IncludeAllocatedToBackOrder'];
Gssn = json['Gssn'];
IsOneAdmin = json['IsOneAdmin'];
MotabilityPricingId = json['MotabilityPricingId'];
return this;
}
Map<String, dynamic> toJson() => {
'VehicleIdentifier': VehicleIdentifier,
'IncludeAllocatedToBackOrder': IncludeAllocatedToBackOrder,
'Gssn': Gssn,
'IsOneAdmin': IsOneAdmin,
'MotabilityPricingId': MotabilityPricingId
};
getTypeName() => "GetVehicleWithOptimalRequest";
TypeContext? context = _ctx;
}
class Model implements IConvertible
{
int? Id;
String? Description;
String? DisplayName;
String? ImageUrlSmall;
String? ImageUrlMedium;
String? ImageUrlLarge;
bool? Specialist;
int? Priority;
bool? ExcludeFromOnlineShowroomFilters;
Model({this.Id,this.Description,this.DisplayName,this.ImageUrlSmall,this.ImageUrlMedium,this.ImageUrlLarge,this.Specialist,this.Priority,this.ExcludeFromOnlineShowroomFilters});
Model.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Description = json['Description'];
DisplayName = json['DisplayName'];
ImageUrlSmall = json['ImageUrlSmall'];
ImageUrlMedium = json['ImageUrlMedium'];
ImageUrlLarge = json['ImageUrlLarge'];
Specialist = json['Specialist'];
Priority = json['Priority'];
ExcludeFromOnlineShowroomFilters = json['ExcludeFromOnlineShowroomFilters'];
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Description': Description,
'DisplayName': DisplayName,
'ImageUrlSmall': ImageUrlSmall,
'ImageUrlMedium': ImageUrlMedium,
'ImageUrlLarge': ImageUrlLarge,
'Specialist': Specialist,
'Priority': Priority,
'ExcludeFromOnlineShowroomFilters': ExcludeFromOnlineShowroomFilters
};
getTypeName() => "Model";
TypeContext? context = _ctx;
}
class BodyStyle implements IConvertible
{
int? Id;
String? Description;
List<Model>? Models;
BodyStyle({this.Id,this.Description,this.Models});
BodyStyle.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Description = json['Description'];
Models = JsonConverters.fromJson(json['Models'],'List<Model>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Description': Description,
'Models': JsonConverters.toJson(Models,'List<Model>',context!)
};
getTypeName() => "BodyStyle";
TypeContext? context = _ctx;
}
class Brand implements IConvertible
{
int? Id;
String? Description;
String? DisplayName;
List<BodyStyle>? BodyStyles;
Brand({this.Id,this.Description,this.DisplayName,this.BodyStyles});
Brand.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Description = json['Description'];
DisplayName = json['DisplayName'];
BodyStyles = JsonConverters.fromJson(json['BodyStyles'],'List<BodyStyle>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Description': Description,
'DisplayName': DisplayName,
'BodyStyles': JsonConverters.toJson(BodyStyles,'List<BodyStyle>',context!)
};
getTypeName() => "Brand";
TypeContext? context = _ctx;
}
class Engine implements IConvertible
{
int? Id;
String? Badge;
Engine({this.Id,this.Badge});
Engine.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Badge = json['Badge'];
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Badge': Badge
};
getTypeName() => "Engine";
TypeContext? context = _ctx;
}
class Media implements IConvertible
{
bool? NoImage;
String? MainImageUrl;
Media({this.NoImage,this.MainImageUrl});
Media.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
NoImage = json['NoImage'];
MainImageUrl = json['MainImageUrl'];
return this;
}
Map<String, dynamic> toJson() => {
'NoImage': NoImage,
'MainImageUrl': MainImageUrl
};
getTypeName() => "Media";
TypeContext? context = _ctx;
}
enum OfferPriceProductType
{
LIST_PRICE,
NUMBER_PLATE_FEE,
DELIVERY_CHARGE,
FUEL_CHARGE,
MANUFACTURER_OFFER,
PERSONALISED_MONEYOFFER,
PERSONALISED_NONMONEYOFFER,
PERSONALISED_NONMONEYOFFER_NEG,
SERVICE,
SERVICE_NEG,
GOVERNMENT_GRANT,
OUTRIGHT_PURCHASE_DISCOUNT,
VIP_OFFER,
WALLBOX_OFFER,
WALLBOX_OFFER_NEG,
ROAD_FUND_LICENCE,
FIRST_REGISTRATION_FEE,
NOT_FOUND,
ACCESSORY_OFFER,
ACCESSORY_OFFER_NEG,
MOTABILITY_DISCOUNT,
}
class Price implements IConvertible
{
String? Id;
String? Description;
double? Net;
double? VAT;
double? Gross;
OfferPriceProductType? Product;
Price({this.Id,this.Description,this.Net,this.VAT,this.Gross,this.Product});
Price.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Description = json['Description'];
Net = JsonConverters.toDouble(json['Net']);
VAT = JsonConverters.toDouble(json['VAT']);
Gross = JsonConverters.toDouble(json['Gross']);
Product = JsonConverters.fromJson(json['Product'],'OfferPriceProductType',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Description': Description,
'Net': Net,
'VAT': VAT,
'Gross': Gross,
'Product': JsonConverters.toJson(Product,'OfferPriceProductType',context!)
};
getTypeName() => "Price";
TypeContext? context = _ctx;
}
class RetailerOpeningTime implements IConvertible
{
String? Day;
String? OpenFrom;
String? OpenTo;
String? Special;
RetailerOpeningTime({this.Day,this.OpenFrom,this.OpenTo,this.Special});
RetailerOpeningTime.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Day = json['Day'];
OpenFrom = json['OpenFrom'];
OpenTo = json['OpenTo'];
Special = json['Special'];
return this;
}
Map<String, dynamic> toJson() => {
'Day': Day,
'OpenFrom': OpenFrom,
'OpenTo': OpenTo,
'Special': Special
};
getTypeName() => "RetailerOpeningTime";
TypeContext? context = _ctx;
}
class RetailerOpeningTimes implements IConvertible
{
List<RetailerOpeningTime>? New = [];
List<RetailerOpeningTime>? Used = [];
RetailerOpeningTimes({this.New,this.Used});
RetailerOpeningTimes.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
New = JsonConverters.fromJson(json['New'],'List<RetailerOpeningTime>',context!);
Used = JsonConverters.fromJson(json['Used'],'List<RetailerOpeningTime>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'New': JsonConverters.toJson(New,'List<RetailerOpeningTime>',context!),
'Used': JsonConverters.toJson(Used,'List<RetailerOpeningTime>',context!)
};
getTypeName() => "RetailerOpeningTimes";
TypeContext? context = _ctx;
}
class Retailer implements IConvertible
{
int? Id;
String? GssnId;
String? Description;
String? Street;
String? City;
String? Postcode;
String? GoogleMapPostcode;
String? Phone;
String? Fax;
String? Email;
String? Website;
String? RetailerGroupId;
String? RetailerGroupName;
bool? IsOnline;
bool? IsNewCarRetailer;
bool? IsUsedCarRetailer;
bool? IsCentralRetailer;
bool? ChatEnabled;
bool? TradeInEnabled;
bool? smart;
String? DisplayPhoneNumberNew;
String? DisplayPhoneNumberUsed;
double? Latitude;
double? Longitude;
String? smartDescription;
String? smartWebsite;
String? smartPhone;
String? LegacyId;
bool? Agent;
int? MarketAreaId;
String? DigitalLoungeParentGssnId;
bool? SendLeadsToDigitalLoungeParent;
RetailerOpeningTimes? OpeningTimes;
Retailer({this.Id,this.GssnId,this.Description,this.Street,this.City,this.Postcode,this.GoogleMapPostcode,this.Phone,this.Fax,this.Email,this.Website,this.RetailerGroupId,this.RetailerGroupName,this.IsOnline,this.IsNewCarRetailer,this.IsUsedCarRetailer,this.IsCentralRetailer,this.ChatEnabled,this.TradeInEnabled,this.smart,this.DisplayPhoneNumberNew,this.DisplayPhoneNumberUsed,this.Latitude,this.Longitude,this.smartDescription,this.smartWebsite,this.smartPhone,this.LegacyId,this.Agent,this.MarketAreaId,this.DigitalLoungeParentGssnId,this.SendLeadsToDigitalLoungeParent,this.OpeningTimes});
Retailer.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
GssnId = json['GssnId'];
Description = json['Description'];
Street = json['Street'];
City = json['City'];
Postcode = json['Postcode'];
GoogleMapPostcode = json['GoogleMapPostcode'];
Phone = json['Phone'];
Fax = json['Fax'];
Email = json['Email'];
Website = json['Website'];
RetailerGroupId = json['RetailerGroupId'];
RetailerGroupName = json['RetailerGroupName'];
IsOnline = json['IsOnline'];
IsNewCarRetailer = json['IsNewCarRetailer'];
IsUsedCarRetailer = json['IsUsedCarRetailer'];
IsCentralRetailer = json['IsCentralRetailer'];
ChatEnabled = json['ChatEnabled'];
TradeInEnabled = json['TradeInEnabled'];
smart = json['smart'];
DisplayPhoneNumberNew = json['DisplayPhoneNumberNew'];
DisplayPhoneNumberUsed = json['DisplayPhoneNumberUsed'];
Latitude = JsonConverters.toDouble(json['Latitude']);
Longitude = JsonConverters.toDouble(json['Longitude']);
smartDescription = json['smartDescription'];
smartWebsite = json['smartWebsite'];
smartPhone = json['smartPhone'];
LegacyId = json['LegacyId'];
Agent = json['Agent'];
MarketAreaId = json['MarketAreaId'];
DigitalLoungeParentGssnId = json['DigitalLoungeParentGssnId'];
SendLeadsToDigitalLoungeParent = json['SendLeadsToDigitalLoungeParent'];
OpeningTimes = JsonConverters.fromJson(json['OpeningTimes'],'RetailerOpeningTimes',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'GssnId': GssnId,
'Description': Description,
'Street': Street,
'City': City,
'Postcode': Postcode,
'GoogleMapPostcode': GoogleMapPostcode,
'Phone': Phone,
'Fax': Fax,
'Email': Email,
'Website': Website,
'RetailerGroupId': RetailerGroupId,
'RetailerGroupName': RetailerGroupName,
'IsOnline': IsOnline,
'IsNewCarRetailer': IsNewCarRetailer,
'IsUsedCarRetailer': IsUsedCarRetailer,
'IsCentralRetailer': IsCentralRetailer,
'ChatEnabled': ChatEnabled,
'TradeInEnabled': TradeInEnabled,
'smart': smart,
'DisplayPhoneNumberNew': DisplayPhoneNumberNew,
'DisplayPhoneNumberUsed': DisplayPhoneNumberUsed,
'Latitude': Latitude,
'Longitude': Longitude,
'smartDescription': smartDescription,
'smartWebsite': smartWebsite,
'smartPhone': smartPhone,
'LegacyId': LegacyId,
'Agent': Agent,
'MarketAreaId': MarketAreaId,
'DigitalLoungeParentGssnId': DigitalLoungeParentGssnId,
'SendLeadsToDigitalLoungeParent': SendLeadsToDigitalLoungeParent,
'OpeningTimes': JsonConverters.toJson(OpeningTimes,'RetailerOpeningTimes',context!)
};
getTypeName() => "Retailer";
TypeContext? context = _ctx;
}
class VehicleConsumption implements IConvertible
{
int? Id;
double? Lkm;
double? Mpg;
VehicleConsumption({this.Id,this.Lkm,this.Mpg});
VehicleConsumption.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Lkm = JsonConverters.toDouble(json['Lkm']);
Mpg = JsonConverters.toDouble(json['Mpg']);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Lkm': Lkm,
'Mpg': Mpg
};
getTypeName() => "VehicleConsumption";
TypeContext? context = _ctx;
}
class Equipment implements IConvertible
{
int? Id;
String? Code;
String? Description;
Equipment({this.Id,this.Code,this.Description});
Equipment.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Code = json['Code'];
Description = json['Description'];
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Code': Code,
'Description': Description
};
getTypeName() => "Equipment";
TypeContext? context = _ctx;
}
class Equipmentv2 extends Equipment implements IConvertible
{
int? Importance;
bool? IsAdditional;
Equipmentv2({this.Importance,this.IsAdditional});
Equipmentv2.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Importance = json['Importance'];
IsAdditional = json['IsAdditional'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Importance': Importance,
'IsAdditional': IsAdditional
});
getTypeName() => "Equipmentv2";
TypeContext? context = _ctx;
}
class VehicleEquipmentCategory implements IConvertible
{
int? Order;
String? Code;
String? Description;
List<Equipmentv2>? Equipment;
VehicleEquipmentCategory({this.Order,this.Code,this.Description,this.Equipment});
VehicleEquipmentCategory.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Order = json['Order'];
Code = json['Code'];
Description = json['Description'];
Equipment = JsonConverters.fromJson(json['Equipment'],'List<Equipmentv2>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Order': Order,
'Code': Code,
'Description': Description,
'Equipment': JsonConverters.toJson(Equipment,'List<Equipmentv2>',context!)
};
getTypeName() => "VehicleEquipmentCategory";
TypeContext? context = _ctx;
}
class VehicleEmissionClass implements IConvertible
{
String? Colour;
String? Rating;
VehicleEmissionClass({this.Colour,this.Rating});
VehicleEmissionClass.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Colour = json['Colour'];
Rating = json['Rating'];
return this;
}
Map<String, dynamic> toJson() => {
'Colour': Colour,
'Rating': Rating
};
getTypeName() => "VehicleEmissionClass";
TypeContext? context = _ctx;
}
class VehicleAttribute implements IConvertible
{
String? Description;
String? Value;
VehicleAttribute({this.Description,this.Value});
VehicleAttribute.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Description = json['Description'];
Value = json['Value'];
return this;
}
Map<String, dynamic> toJson() => {
'Description': Description,
'Value': Value
};
getTypeName() => "VehicleAttribute";
TypeContext? context = _ctx;
}
class VehicleIntegratedServiceCareOption implements IConvertible
{
String? OptionCode;
String? BM7NST;
String? FullModelYear;
String? IntegratedProductType;
String? CustomerDescription;
String? OneAgentProductType;
VehicleIntegratedServiceCareOption({this.OptionCode,this.BM7NST,this.FullModelYear,this.IntegratedProductType,this.CustomerDescription,this.OneAgentProductType});
VehicleIntegratedServiceCareOption.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
OptionCode = json['OptionCode'];
BM7NST = json['BM7NST'];
FullModelYear = json['FullModelYear'];
IntegratedProductType = json['IntegratedProductType'];
CustomerDescription = json['CustomerDescription'];
OneAgentProductType = json['OneAgentProductType'];
return this;
}
Map<String, dynamic> toJson() => {
'OptionCode': OptionCode,
'BM7NST': BM7NST,
'FullModelYear': FullModelYear,
'IntegratedProductType': IntegratedProductType,
'CustomerDescription': CustomerDescription,
'OneAgentProductType': OneAgentProductType
};
getTypeName() => "VehicleIntegratedServiceCareOption";
TypeContext? context = _ctx;
}
class VehicleDetailDto implements IConvertible
{
String? BodyStyle;
String? Vin;
String? Description;
String? Colour;
String? ColourCode;
String? ColourDescription;
String? ColourGroup;
String? Model;
String? CommissionNumber;
int? BrandId;
Brand? Brand;
Engine? Engine;
String? EngineBadge;
Media? Media;
String? Line;
String? UpholsteryCode;
String? UpholsteryType;
String? Upholstery;
String? UpholsteryDescription;
List<String>? AvailablePackages = [];
List<String>? Packages = [];
double? P11D;
DateTime? PortArrivalDate;
List<Price>? Prices = [];
String? TransmissionType;
String? FuelType;
String? VehicleClass;
String? ProductRange;
String? VehicleType;
double? Emission;
bool? IsAvailableOnline;
bool? UnderOffer;
bool? IsExcluded;
bool? IsSellable;
bool? OnHold;
double? ElectricConsumption;
double? ElectricRange;
String? ImageUrl;
String? Baumuster;
Retailer? Retailer;
String? Bm7NST;
double? OTR;
double? ActualPrice;
bool? IsDisplayStock;
int? DisplayRetailerId;
String? DisplayRetailer;
String? DisplayRetailerGssnId;
String? DisplayRetailerMarketAreaId;
bool? IsSmartDisplayRetailer;
bool? IsSpecialistCar;
int? Age;
bool? Secured;
bool? IsHOBackOrderAccountVehicle;
bool? IsAllocatedToBackOrder;
String? UsageCode;
double? EmissionCombined;
String? NormalisedEmissionDirective;
bool? HasMildHybridEquipmentCode;
double? RetailPriceExVat;
double? RetailPrice_IncVAT;
double? RetailPrice_ExVAT;
int? ModelId;
String? VID;
String? ProductionDate;
String? FullModelYearCode;
String? ChassisNumber;
bool? EligibleForIntegratedServiceCare;
String? AccountType;
VehicleConsumption? ConsumptionCombined;
VehicleConsumption? ConsumptionExtraUrban;
VehicleConsumption? ConsumptionUrban;
VehicleConsumption? WltpFuelConsumptionCombined;
VehicleConsumption? WltpFuelConsumptionExtraHigh;
VehicleConsumption? WltpFuelConsumptionHigh;
VehicleConsumption? WltpFuelConsumptionLow;
VehicleConsumption? WltpFuelConsumptionMedium;
List<Equipmentv2>? Equipment;
List<VehicleEquipmentCategory>? EquipmentCategories;
VehicleEmissionClass? EnergyEfficiencyClass;
List<VehicleAttribute>? VehicleData;
List<VehicleIntegratedServiceCareOption>? IntegratedServiceCareOptions = [];
List<String>? IspVehicleCustomerDescriptions;
VehicleDetailDto({this.BodyStyle,this.Vin,this.Description,this.Colour,this.ColourCode,this.ColourDescription,this.ColourGroup,this.Model,this.CommissionNumber,this.BrandId,this.Brand,this.Engine,this.EngineBadge,this.Media,this.Line,this.UpholsteryCode,this.UpholsteryType,this.Upholstery,this.UpholsteryDescription,this.AvailablePackages,this.Packages,this.P11D,this.PortArrivalDate,this.Prices,this.TransmissionType,this.FuelType,this.VehicleClass,this.ProductRange,this.VehicleType,this.Emission,this.IsAvailableOnline,this.UnderOffer,this.IsExcluded,this.IsSellable,this.OnHold,this.ElectricConsumption,this.ElectricRange,this.ImageUrl,this.Baumuster,this.Retailer,this.Bm7NST,this.OTR,this.ActualPrice,this.IsDisplayStock,this.DisplayRetailerId,this.DisplayRetailer,this.DisplayRetailerGssnId,this.DisplayRetailerMarketAreaId,this.IsSmartDisplayRetailer,this.IsSpecialistCar,this.Age,this.Secured,this.IsHOBackOrderAccountVehicle,this.IsAllocatedToBackOrder,this.UsageCode,this.EmissionCombined,this.NormalisedEmissionDirective,this.HasMildHybridEquipmentCode,this.RetailPriceExVat,this.RetailPrice_IncVAT,this.RetailPrice_ExVAT,this.ModelId,this.VID,this.ProductionDate,this.FullModelYearCode,this.ChassisNumber,this.EligibleForIntegratedServiceCare,this.AccountType,this.ConsumptionCombined,this.ConsumptionExtraUrban,this.ConsumptionUrban,this.WltpFuelConsumptionCombined,this.WltpFuelConsumptionExtraHigh,this.WltpFuelConsumptionHigh,this.WltpFuelConsumptionLow,this.WltpFuelConsumptionMedium,this.Equipment,this.EquipmentCategories,this.EnergyEfficiencyClass,this.VehicleData,this.IntegratedServiceCareOptions,this.IspVehicleCustomerDescriptions});
VehicleDetailDto.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
BodyStyle = json['BodyStyle'];
Vin = json['Vin'];
Description = json['Description'];
Colour = json['Colour'];
ColourCode = json['ColourCode'];
ColourDescription = json['ColourDescription'];
ColourGroup = json['ColourGroup'];
Model = json['Model'];
CommissionNumber = json['CommissionNumber'];
BrandId = json['BrandId'];
Brand = JsonConverters.fromJson(json['Brand'],'Brand',context!);
Engine = JsonConverters.fromJson(json['Engine'],'Engine',context!);
EngineBadge = json['EngineBadge'];
Media = JsonConverters.fromJson(json['Media'],'Media',context!);
Line = json['Line'];
UpholsteryCode = json['UpholsteryCode'];
UpholsteryType = json['UpholsteryType'];
Upholstery = json['Upholstery'];
UpholsteryDescription = json['UpholsteryDescription'];
AvailablePackages = JsonConverters.fromJson(json['AvailablePackages'],'List<String>',context!);
Packages = JsonConverters.fromJson(json['Packages'],'List<String>',context!);
P11D = JsonConverters.toDouble(json['P11D']);
PortArrivalDate = JsonConverters.fromJson(json['PortArrivalDate'],'DateTime',context!);
Prices = JsonConverters.fromJson(json['Prices'],'List<Price>',context!);
TransmissionType = json['TransmissionType'];
FuelType = json['FuelType'];
VehicleClass = json['VehicleClass'];
ProductRange = json['ProductRange'];
VehicleType = json['VehicleType'];
Emission = JsonConverters.toDouble(json['Emission']);
IsAvailableOnline = json['IsAvailableOnline'];
UnderOffer = json['UnderOffer'];
IsExcluded = json['IsExcluded'];
IsSellable = json['IsSellable'];
OnHold = json['OnHold'];
ElectricConsumption = JsonConverters.toDouble(json['ElectricConsumption']);
ElectricRange = JsonConverters.toDouble(json['ElectricRange']);
ImageUrl = json['ImageUrl'];
Baumuster = json['Baumuster'];
Retailer = JsonConverters.fromJson(json['Retailer'],'Retailer',context!);
Bm7NST = json['Bm7NST'];
OTR = JsonConverters.toDouble(json['OTR']);
ActualPrice = JsonConverters.toDouble(json['ActualPrice']);
IsDisplayStock = json['IsDisplayStock'];
DisplayRetailerId = json['DisplayRetailerId'];
DisplayRetailer = json['DisplayRetailer'];
DisplayRetailerGssnId = json['DisplayRetailerGssnId'];
DisplayRetailerMarketAreaId = json['DisplayRetailerMarketAreaId'];
IsSmartDisplayRetailer = json['IsSmartDisplayRetailer'];
IsSpecialistCar = json['IsSpecialistCar'];
Age = json['Age'];
Secured = json['Secured'];
IsHOBackOrderAccountVehicle = json['IsHOBackOrderAccountVehicle'];
IsAllocatedToBackOrder = json['IsAllocatedToBackOrder'];
UsageCode = json['UsageCode'];
EmissionCombined = JsonConverters.toDouble(json['EmissionCombined']);
NormalisedEmissionDirective = json['NormalisedEmissionDirective'];
HasMildHybridEquipmentCode = json['HasMildHybridEquipmentCode'];
RetailPriceExVat = JsonConverters.toDouble(json['RetailPriceExVat']);
RetailPrice_IncVAT = JsonConverters.toDouble(json['RetailPrice_IncVAT']);
RetailPrice_ExVAT = JsonConverters.toDouble(json['RetailPrice_ExVAT']);
ModelId = json['ModelId'];
VID = json['VID'];
ProductionDate = json['ProductionDate'];
FullModelYearCode = json['FullModelYearCode'];
ChassisNumber = json['ChassisNumber'];
EligibleForIntegratedServiceCare = json['EligibleForIntegratedServiceCare'];
AccountType = json['AccountType'];
ConsumptionCombined = JsonConverters.fromJson(json['ConsumptionCombined'],'VehicleConsumption',context!);
ConsumptionExtraUrban = JsonConverters.fromJson(json['ConsumptionExtraUrban'],'VehicleConsumption',context!);
ConsumptionUrban = JsonConverters.fromJson(json['ConsumptionUrban'],'VehicleConsumption',context!);
WltpFuelConsumptionCombined = JsonConverters.fromJson(json['WltpFuelConsumptionCombined'],'VehicleConsumption',context!);
WltpFuelConsumptionExtraHigh = JsonConverters.fromJson(json['WltpFuelConsumptionExtraHigh'],'VehicleConsumption',context!);
WltpFuelConsumptionHigh = JsonConverters.fromJson(json['WltpFuelConsumptionHigh'],'VehicleConsumption',context!);
WltpFuelConsumptionLow = JsonConverters.fromJson(json['WltpFuelConsumptionLow'],'VehicleConsumption',context!);
WltpFuelConsumptionMedium = JsonConverters.fromJson(json['WltpFuelConsumptionMedium'],'VehicleConsumption',context!);
Equipment = JsonConverters.fromJson(json['Equipment'],'List<Equipmentv2>',context!);
EquipmentCategories = JsonConverters.fromJson(json['EquipmentCategories'],'List<VehicleEquipmentCategory>',context!);
EnergyEfficiencyClass = JsonConverters.fromJson(json['EnergyEfficiencyClass'],'VehicleEmissionClass',context!);
VehicleData = JsonConverters.fromJson(json['VehicleData'],'List<VehicleAttribute>',context!);
IntegratedServiceCareOptions = JsonConverters.fromJson(json['IntegratedServiceCareOptions'],'List<VehicleIntegratedServiceCareOption>',context!);
IspVehicleCustomerDescriptions = JsonConverters.fromJson(json['IspVehicleCustomerDescriptions'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'BodyStyle': BodyStyle,
'Vin': Vin,
'Description': Description,
'Colour': Colour,
'ColourCode': ColourCode,
'ColourDescription': ColourDescription,
'ColourGroup': ColourGroup,
'Model': Model,
'CommissionNumber': CommissionNumber,
'BrandId': BrandId,
'Brand': JsonConverters.toJson(Brand,'Brand',context!),
'Engine': JsonConverters.toJson(Engine,'Engine',context!),
'EngineBadge': EngineBadge,
'Media': JsonConverters.toJson(Media,'Media',context!),
'Line': Line,
'UpholsteryCode': UpholsteryCode,
'UpholsteryType': UpholsteryType,
'Upholstery': Upholstery,
'UpholsteryDescription': UpholsteryDescription,
'AvailablePackages': JsonConverters.toJson(AvailablePackages,'List<String>',context!),
'Packages': JsonConverters.toJson(Packages,'List<String>',context!),
'P11D': P11D,
'PortArrivalDate': JsonConverters.toJson(PortArrivalDate,'DateTime',context!),
'Prices': JsonConverters.toJson(Prices,'List<Price>',context!),
'TransmissionType': TransmissionType,
'FuelType': FuelType,
'VehicleClass': VehicleClass,
'ProductRange': ProductRange,
'VehicleType': VehicleType,
'Emission': Emission,
'IsAvailableOnline': IsAvailableOnline,
'UnderOffer': UnderOffer,
'IsExcluded': IsExcluded,
'IsSellable': IsSellable,
'OnHold': OnHold,
'ElectricConsumption': ElectricConsumption,
'ElectricRange': ElectricRange,
'ImageUrl': ImageUrl,
'Baumuster': Baumuster,
'Retailer': JsonConverters.toJson(Retailer,'Retailer',context!),
'Bm7NST': Bm7NST,
'OTR': OTR,
'ActualPrice': ActualPrice,
'IsDisplayStock': IsDisplayStock,
'DisplayRetailerId': DisplayRetailerId,
'DisplayRetailer': DisplayRetailer,
'DisplayRetailerGssnId': DisplayRetailerGssnId,
'DisplayRetailerMarketAreaId': DisplayRetailerMarketAreaId,
'IsSmartDisplayRetailer': IsSmartDisplayRetailer,
'IsSpecialistCar': IsSpecialistCar,
'Age': Age,
'Secured': Secured,
'IsHOBackOrderAccountVehicle': IsHOBackOrderAccountVehicle,
'IsAllocatedToBackOrder': IsAllocatedToBackOrder,
'UsageCode': UsageCode,
'EmissionCombined': EmissionCombined,
'NormalisedEmissionDirective': NormalisedEmissionDirective,
'HasMildHybridEquipmentCode': HasMildHybridEquipmentCode,
'RetailPriceExVat': RetailPriceExVat,
'RetailPrice_IncVAT': RetailPrice_IncVAT,
'RetailPrice_ExVAT': RetailPrice_ExVAT,
'ModelId': ModelId,
'VID': VID,
'ProductionDate': ProductionDate,
'FullModelYearCode': FullModelYearCode,
'ChassisNumber': ChassisNumber,
'EligibleForIntegratedServiceCare': EligibleForIntegratedServiceCare,
'AccountType': AccountType,
'ConsumptionCombined': JsonConverters.toJson(ConsumptionCombined,'VehicleConsumption',context!),
'ConsumptionExtraUrban': JsonConverters.toJson(ConsumptionExtraUrban,'VehicleConsumption',context!),
'ConsumptionUrban': JsonConverters.toJson(ConsumptionUrban,'VehicleConsumption',context!),
'WltpFuelConsumptionCombined': JsonConverters.toJson(WltpFuelConsumptionCombined,'VehicleConsumption',context!),
'WltpFuelConsumptionExtraHigh': JsonConverters.toJson(WltpFuelConsumptionExtraHigh,'VehicleConsumption',context!),
'WltpFuelConsumptionHigh': JsonConverters.toJson(WltpFuelConsumptionHigh,'VehicleConsumption',context!),
'WltpFuelConsumptionLow': JsonConverters.toJson(WltpFuelConsumptionLow,'VehicleConsumption',context!),
'WltpFuelConsumptionMedium': JsonConverters.toJson(WltpFuelConsumptionMedium,'VehicleConsumption',context!),
'Equipment': JsonConverters.toJson(Equipment,'List<Equipmentv2>',context!),
'EquipmentCategories': JsonConverters.toJson(EquipmentCategories,'List<VehicleEquipmentCategory>',context!),
'EnergyEfficiencyClass': JsonConverters.toJson(EnergyEfficiencyClass,'VehicleEmissionClass',context!),
'VehicleData': JsonConverters.toJson(VehicleData,'List<VehicleAttribute>',context!),
'IntegratedServiceCareOptions': JsonConverters.toJson(IntegratedServiceCareOptions,'List<VehicleIntegratedServiceCareOption>',context!),
'IspVehicleCustomerDescriptions': JsonConverters.toJson(IspVehicleCustomerDescriptions,'List<String>',context!)
};
getTypeName() => "VehicleDetailDto";
TypeContext? context = _ctx;
}
class VehicleError implements IConvertible
{
String? Field;
String? Message;
VehicleError({this.Field,this.Message});
VehicleError.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Field = json['Field'];
Message = json['Message'];
return this;
}
Map<String, dynamic> toJson() => {
'Field': Field,
'Message': Message
};
getTypeName() => "VehicleError";
TypeContext? context = _ctx;
}
class GetVehicleResponse implements IConvertible
{
VehicleDetailDto? Vehicle;
List<VehicleError>? Errors = [];
GetVehicleResponse({this.Vehicle,this.Errors});
GetVehicleResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Vehicle = JsonConverters.fromJson(json['Vehicle'],'VehicleDetailDto',context!);
Errors = JsonConverters.fromJson(json['Errors'],'List<VehicleError>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Vehicle': JsonConverters.toJson(Vehicle,'VehicleDetailDto',context!),
'Errors': JsonConverters.toJson(Errors,'List<VehicleError>',context!)
};
getTypeName() => "GetVehicleResponse";
TypeContext? context = _ctx;
}
class GetVehicleWithOptimalResponse extends GetVehicleResponse implements IConvertible
{
VehicleDetailDto? OptimumVehicle;
GetVehicleWithOptimalResponse({this.OptimumVehicle});
GetVehicleWithOptimalResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
OptimumVehicle = JsonConverters.fromJson(json['OptimumVehicle'],'VehicleDetailDto',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'OptimumVehicle': JsonConverters.toJson(OptimumVehicle,'VehicleDetailDto',context!)
});
getTypeName() => "GetVehicleWithOptimalResponse";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'prod_api_agency_orch_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
'GetVehicleWithOptimalRequest': TypeInfo(TypeOf.Class, create:() => GetVehicleWithOptimalRequest()),
'Model': TypeInfo(TypeOf.Class, create:() => Model()),
'BodyStyle': TypeInfo(TypeOf.Class, create:() => BodyStyle()),
'List<Model>': TypeInfo(TypeOf.Class, create:() => <Model>[]),
'Brand': TypeInfo(TypeOf.Class, create:() => Brand()),
'List<BodyStyle>': TypeInfo(TypeOf.Class, create:() => <BodyStyle>[]),
'Engine': TypeInfo(TypeOf.Class, create:() => Engine()),
'Media': TypeInfo(TypeOf.Class, create:() => Media()),
'OfferPriceProductType': TypeInfo(TypeOf.Enum, enumValues:OfferPriceProductType.values),
'Price': TypeInfo(TypeOf.Class, create:() => Price()),
'RetailerOpeningTime': TypeInfo(TypeOf.Class, create:() => RetailerOpeningTime()),
'RetailerOpeningTimes': TypeInfo(TypeOf.Class, create:() => RetailerOpeningTimes()),
'List<RetailerOpeningTime>': TypeInfo(TypeOf.Class, create:() => <RetailerOpeningTime>[]),
'Retailer': TypeInfo(TypeOf.Class, create:() => Retailer()),
'VehicleConsumption': TypeInfo(TypeOf.Class, create:() => VehicleConsumption()),
'Equipment': TypeInfo(TypeOf.Class, create:() => Equipment()),
'Equipmentv2': TypeInfo(TypeOf.Class, create:() => Equipmentv2()),
'VehicleEquipmentCategory': TypeInfo(TypeOf.Class, create:() => VehicleEquipmentCategory()),
'List<Equipmentv2>': TypeInfo(TypeOf.Class, create:() => <Equipmentv2>[]),
'VehicleEmissionClass': TypeInfo(TypeOf.Class, create:() => VehicleEmissionClass()),
'VehicleAttribute': TypeInfo(TypeOf.Class, create:() => VehicleAttribute()),
'VehicleIntegratedServiceCareOption': TypeInfo(TypeOf.Class, create:() => VehicleIntegratedServiceCareOption()),
'VehicleDetailDto': TypeInfo(TypeOf.Class, create:() => VehicleDetailDto()),
'List<Price>': TypeInfo(TypeOf.Class, create:() => <Price>[]),
'List<VehicleEquipmentCategory>': TypeInfo(TypeOf.Class, create:() => <VehicleEquipmentCategory>[]),
'List<VehicleAttribute>': TypeInfo(TypeOf.Class, create:() => <VehicleAttribute>[]),
'List<VehicleIntegratedServiceCareOption>': TypeInfo(TypeOf.Class, create:() => <VehicleIntegratedServiceCareOption>[]),
'VehicleError': TypeInfo(TypeOf.Class, create:() => VehicleError()),
'GetVehicleResponse': TypeInfo(TypeOf.Class, create:() => GetVehicleResponse()),
'List<VehicleError>': TypeInfo(TypeOf.Class, create:() => <VehicleError>[]),
'GetVehicleWithOptimalResponse': TypeInfo(TypeOf.Class, create:() => GetVehicleWithOptimalResponse()),
});
Dart GetVehicleWithOptimalRequest 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/VehicleWithOptimal HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"VehicleIdentifier":"String","IncludeAllocatedToBackOrder":false,"Gssn":"String","IsOneAdmin":false,"MotabilityPricingId":0}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"OptimumVehicle":{"BodyStyle":"String","Vin":"String","Description":"String","Colour":"String","ColourCode":"String","ColourDescription":"String","ColourGroup":"String","Model":"String","CommissionNumber":"String","BrandId":0,"Brand":{"Id":0,"Description":"String","DisplayName":"String","BodyStyles":[{"Id":0,"Description":"String","Models":[{"Id":0,"Description":"String","DisplayName":"String","ImageUrlSmall":"String","ImageUrlMedium":"String","ImageUrlLarge":"String","Specialist":false,"Priority":0,"ExcludeFromOnlineShowroomFilters":false}]}]},"Engine":{"Id":0,"Badge":"String"},"EngineBadge":"String","Media":{"NoImage":false,"MainImageUrl":"String"},"Line":"String","UpholsteryCode":"String","UpholsteryType":"String","Upholstery":"String","UpholsteryDescription":"String","AvailablePackages":["String"],"Packages":["String"],"P11D":0,"PortArrivalDate":"\/Date(-62135596800000-0000)\/","Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"LIST_PRICE"}],"TransmissionType":"String","FuelType":"String","VehicleClass":"String","ProductRange":"String","VehicleType":"String","Emission":0,"IsAvailableOnline":false,"UnderOffer":false,"IsExcluded":false,"IsSellable":false,"OnHold":false,"ElectricConsumption":0,"ElectricRange":0,"ImageUrl":"String","Baumuster":"String","Retailer":{"Id":0,"GssnId":"String","Description":"String","Street":"String","City":"String","Postcode":"String","GoogleMapPostcode":"String","Phone":"String","Fax":"String","Email":"String","Website":"String","RetailerGroupId":"String","RetailerGroupName":"String","IsOnline":false,"IsNewCarRetailer":false,"IsUsedCarRetailer":false,"IsCentralRetailer":false,"ChatEnabled":false,"TradeInEnabled":false,"smart":false,"DisplayPhoneNumberNew":"String","DisplayPhoneNumberUsed":"String","Latitude":0,"Longitude":0,"smartDescription":"String","smartWebsite":"String","smartPhone":"String","LegacyId":"String","Agent":false,"MarketAreaId":0,"DigitalLoungeParentGssnId":"String","SendLeadsToDigitalLoungeParent":false,"OpeningTimes":{"New":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}],"Used":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}]}},"Bm7NST":"String","OTR":0,"ActualPrice":0,"IsDisplayStock":false,"DisplayRetailerId":0,"DisplayRetailer":"String","DisplayRetailerGssnId":"String","DisplayRetailerMarketAreaId":"String","IsSmartDisplayRetailer":false,"IsSpecialistCar":false,"Age":0,"Secured":false,"IsHOBackOrderAccountVehicle":false,"IsAllocatedToBackOrder":false,"UsageCode":"String","EmissionCombined":0,"NormalisedEmissionDirective":"String","HasMildHybridEquipmentCode":false,"RetailPriceExVat":0,"RetailPrice_IncVAT":0,"RetailPrice_ExVAT":0,"ModelId":0,"VID":"String","ProductionDate":"String","FullModelYearCode":"String","ChassisNumber":"String","EligibleForIntegratedServiceCare":false,"AccountType":"String","ConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionExtraUrban":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionUrban":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionExtraHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionLow":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionMedium":{"Id":0,"Lkm":0,"Mpg":0},"Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}],"EquipmentCategories":[{"Order":0,"Code":"String","Description":"String","Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}]}],"EnergyEfficiencyClass":{"Colour":"String","Rating":"String"},"VehicleData":[{"Description":"String","Value":"String"}],"IntegratedServiceCareOptions":[{"OptionCode":"String","BM7NST":"String","FullModelYear":"String","IntegratedProductType":"String","CustomerDescription":"String","OneAgentProductType":"String"}],"IspVehicleCustomerDescriptions":["String"]},"Vehicle":{"BodyStyle":"String","Vin":"String","Description":"String","Colour":"String","ColourCode":"String","ColourDescription":"String","ColourGroup":"String","Model":"String","CommissionNumber":"String","BrandId":0,"Brand":{"Id":0,"Description":"String","DisplayName":"String","BodyStyles":[{"Id":0,"Description":"String","Models":[{"Id":0,"Description":"String","DisplayName":"String","ImageUrlSmall":"String","ImageUrlMedium":"String","ImageUrlLarge":"String","Specialist":false,"Priority":0,"ExcludeFromOnlineShowroomFilters":false}]}]},"Engine":{"Id":0,"Badge":"String"},"EngineBadge":"String","Media":{"NoImage":false,"MainImageUrl":"String"},"Line":"String","UpholsteryCode":"String","UpholsteryType":"String","Upholstery":"String","UpholsteryDescription":"String","AvailablePackages":["String"],"Packages":["String"],"P11D":0,"PortArrivalDate":"\/Date(-62135596800000-0000)\/","Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"LIST_PRICE"}],"TransmissionType":"String","FuelType":"String","VehicleClass":"String","ProductRange":"String","VehicleType":"String","Emission":0,"IsAvailableOnline":false,"UnderOffer":false,"IsExcluded":false,"IsSellable":false,"OnHold":false,"ElectricConsumption":0,"ElectricRange":0,"ImageUrl":"String","Baumuster":"String","Retailer":{"Id":0,"GssnId":"String","Description":"String","Street":"String","City":"String","Postcode":"String","GoogleMapPostcode":"String","Phone":"String","Fax":"String","Email":"String","Website":"String","RetailerGroupId":"String","RetailerGroupName":"String","IsOnline":false,"IsNewCarRetailer":false,"IsUsedCarRetailer":false,"IsCentralRetailer":false,"ChatEnabled":false,"TradeInEnabled":false,"smart":false,"DisplayPhoneNumberNew":"String","DisplayPhoneNumberUsed":"String","Latitude":0,"Longitude":0,"smartDescription":"String","smartWebsite":"String","smartPhone":"String","LegacyId":"String","Agent":false,"MarketAreaId":0,"DigitalLoungeParentGssnId":"String","SendLeadsToDigitalLoungeParent":false,"OpeningTimes":{"New":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}],"Used":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}]}},"Bm7NST":"String","OTR":0,"ActualPrice":0,"IsDisplayStock":false,"DisplayRetailerId":0,"DisplayRetailer":"String","DisplayRetailerGssnId":"String","DisplayRetailerMarketAreaId":"String","IsSmartDisplayRetailer":false,"IsSpecialistCar":false,"Age":0,"Secured":false,"IsHOBackOrderAccountVehicle":false,"IsAllocatedToBackOrder":false,"UsageCode":"String","EmissionCombined":0,"NormalisedEmissionDirective":"String","HasMildHybridEquipmentCode":false,"RetailPriceExVat":0,"RetailPrice_IncVAT":0,"RetailPrice_ExVAT":0,"ModelId":0,"VID":"String","ProductionDate":"String","FullModelYearCode":"String","ChassisNumber":"String","EligibleForIntegratedServiceCare":false,"AccountType":"String","ConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionExtraUrban":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionUrban":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionExtraHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionLow":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionMedium":{"Id":0,"Lkm":0,"Mpg":0},"Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}],"EquipmentCategories":[{"Order":0,"Code":"String","Description":"String","Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}]}],"EnergyEfficiencyClass":{"Colour":"String","Rating":"String"},"VehicleData":[{"Description":"String","Value":"String"}],"IntegratedServiceCareOptions":[{"OptionCode":"String","BM7NST":"String","FullModelYear":"String","IntegratedProductType":"String","CustomerDescription":"String","OneAgentProductType":"String"}],"IspVehicleCustomerDescriptions":["String"]},"Errors":[{"Field":"String","Message":"String"}]}