POST | /v1/VehicleWithOptimal | Get Vehicle by Vin and a more optimal option if available |
---|
export class GetVehicleWithOptimalRequest
{
public VehicleIdentifier: string;
public IncludeAllocatedToBackOrder: boolean;
public Gssn: string;
public IsOneAdmin: boolean;
public MotabilityPricingId?: number;
public constructor(init?: Partial<GetVehicleWithOptimalRequest>) { (Object as any).assign(this, init); }
}
export class Model
{
public Id: number;
public Description?: string;
public DisplayName?: string;
public ImageUrlSmall?: string;
public ImageUrlMedium?: string;
public ImageUrlLarge?: string;
public Specialist: boolean;
public Priority: number;
public ExcludeFromOnlineShowroomFilters?: boolean;
public constructor(init?: Partial<Model>) { (Object as any).assign(this, init); }
}
export class BodyStyle
{
public Id: number;
public Description?: string;
public Models?: Model[];
public constructor(init?: Partial<BodyStyle>) { (Object as any).assign(this, init); }
}
export class Brand
{
public Id: number;
public Description?: string;
public DisplayName?: string;
public BodyStyles?: BodyStyle[];
public constructor(init?: Partial<Brand>) { (Object as any).assign(this, init); }
}
export class Engine
{
public Id?: number;
public Badge: string;
public constructor(init?: Partial<Engine>) { (Object as any).assign(this, init); }
}
export class Media
{
public NoImage: boolean;
public MainImageUrl: string;
public constructor(init?: Partial<Media>) { (Object as any).assign(this, init); }
}
export enum OfferPriceProductType
{
LIST_PRICE = 'LIST_PRICE',
NUMBER_PLATE_FEE = 'NUMBER_PLATE_FEE',
DELIVERY_CHARGE = 'DELIVERY_CHARGE',
FUEL_CHARGE = 'FUEL_CHARGE',
MANUFACTURER_OFFER = 'MANUFACTURER_OFFER',
PERSONALISED_MONEYOFFER = 'PERSONALISED_MONEYOFFER',
PERSONALISED_NONMONEYOFFER = 'PERSONALISED_NONMONEYOFFER',
PERSONALISED_NONMONEYOFFER_NEG = 'PERSONALISED_NONMONEYOFFER_NEG',
SERVICE = 'SERVICE',
SERVICE_NEG = 'SERVICE_NEG',
GOVERNMENT_GRANT = 'GOVERNMENT_GRANT',
OUTRIGHT_PURCHASE_DISCOUNT = 'OUTRIGHT_PURCHASE_DISCOUNT',
VIP_OFFER = 'VIP_OFFER',
WALLBOX_OFFER = 'WALLBOX_OFFER',
WALLBOX_OFFER_NEG = 'WALLBOX_OFFER_NEG',
ROAD_FUND_LICENCE = 'ROAD_FUND_LICENCE',
FIRST_REGISTRATION_FEE = 'FIRST_REGISTRATION_FEE',
NOT_FOUND = 'NOT_FOUND',
ACCESSORY_OFFER = 'ACCESSORY_OFFER',
ACCESSORY_OFFER_NEG = 'ACCESSORY_OFFER_NEG',
MOTABILITY_DISCOUNT = 'MOTABILITY_DISCOUNT',
}
export class Price
{
public Id: string;
public Description: string;
public Net: number;
public VAT: number;
public Gross: number;
public Product: OfferPriceProductType;
public constructor(init?: Partial<Price>) { (Object as any).assign(this, init); }
}
export class RetailerOpeningTime
{
public Day: string;
public OpenFrom: string;
public OpenTo: string;
public Special: string;
public constructor(init?: Partial<RetailerOpeningTime>) { (Object as any).assign(this, init); }
}
export class RetailerOpeningTimes
{
public New: RetailerOpeningTime[] = [];
public Used: RetailerOpeningTime[] = [];
public constructor(init?: Partial<RetailerOpeningTimes>) { (Object as any).assign(this, init); }
}
export class Retailer
{
public Id: number;
public GssnId: string;
public Description: string;
public Street: string;
public City: string;
public Postcode: string;
public GoogleMapPostcode: string;
public Phone: string;
public Fax: string;
public Email: string;
public Website: string;
public RetailerGroupId: string;
public RetailerGroupName: string;
public IsOnline: boolean;
public IsNewCarRetailer: boolean;
public IsUsedCarRetailer: boolean;
public IsCentralRetailer: boolean;
public ChatEnabled: boolean;
public TradeInEnabled: boolean;
public smart: boolean;
public DisplayPhoneNumberNew: string;
public DisplayPhoneNumberUsed: string;
public Latitude: number;
public Longitude: number;
public smartDescription: string;
public smartWebsite: string;
public smartPhone: string;
public LegacyId: string;
public Agent: boolean;
public MarketAreaId: number;
public DigitalLoungeParentGssnId?: string;
public SendLeadsToDigitalLoungeParent: boolean;
public OpeningTimes?: RetailerOpeningTimes;
public constructor(init?: Partial<Retailer>) { (Object as any).assign(this, init); }
}
export class VehicleConsumption
{
public Id: number;
public Lkm: number;
public Mpg: number;
public constructor(init?: Partial<VehicleConsumption>) { (Object as any).assign(this, init); }
}
export class Equipment
{
public Id: number;
public Code?: string;
public Description?: string;
public constructor(init?: Partial<Equipment>) { (Object as any).assign(this, init); }
}
export class Equipmentv2 extends Equipment
{
public Importance: number;
public IsAdditional: boolean;
public constructor(init?: Partial<Equipmentv2>) { super(init); (Object as any).assign(this, init); }
}
export class VehicleEquipmentCategory
{
public Order: number;
public Code?: string;
public Description?: string;
public Equipment?: Equipmentv2[];
public constructor(init?: Partial<VehicleEquipmentCategory>) { (Object as any).assign(this, init); }
}
export class VehicleEmissionClass
{
public Colour?: string;
public Rating?: string;
public constructor(init?: Partial<VehicleEmissionClass>) { (Object as any).assign(this, init); }
}
export class VehicleAttribute
{
public Description?: string;
public Value?: string;
public constructor(init?: Partial<VehicleAttribute>) { (Object as any).assign(this, init); }
}
export class VehicleIntegratedServiceCareOption
{
public OptionCode?: string;
public BM7NST?: string;
public FullModelYear?: string;
public IntegratedProductType?: string;
public CustomerDescription?: string;
public OneAgentProductType?: string;
public constructor(init?: Partial<VehicleIntegratedServiceCareOption>) { (Object as any).assign(this, init); }
}
export class VehicleDetailDto
{
public BodyStyle: string;
public Vin: string;
public Description: string;
public Colour: string;
public ColourCode: string;
public ColourDescription: string;
public ColourGroup: string;
public Model: string;
public CommissionNumber: string;
public BrandId?: number;
public Brand: Brand;
public Engine: Engine;
public EngineBadge: string;
public Media: Media;
public Line: string;
public UpholsteryCode: string;
public UpholsteryType: string;
public Upholstery: string;
public UpholsteryDescription: string;
public AvailablePackages: string[] = [];
public Packages: string[] = [];
public P11D: number;
public PortArrivalDate?: string;
public Prices: Price[] = [];
public TransmissionType: string;
public FuelType: string;
public VehicleClass: string;
public ProductRange: string;
public VehicleType: string;
public Emission?: number;
public IsAvailableOnline: boolean;
public UnderOffer: boolean;
public IsExcluded: boolean;
public IsSellable: boolean;
public OnHold: boolean;
public ElectricConsumption?: number;
public ElectricRange?: number;
public ImageUrl: string;
public Baumuster: string;
public Retailer: Retailer;
public Bm7NST: string;
public OTR: number;
public ActualPrice: number;
public IsDisplayStock: boolean;
public DisplayRetailerId?: number;
public DisplayRetailer: string;
public DisplayRetailerGssnId: string;
public DisplayRetailerMarketAreaId: string;
public IsSmartDisplayRetailer: boolean;
public IsSpecialistCar: boolean;
public Age?: number;
public Secured: boolean;
public IsHOBackOrderAccountVehicle: boolean;
public IsAllocatedToBackOrder: boolean;
public UsageCode: string;
public EmissionCombined?: number;
public NormalisedEmissionDirective?: string;
public HasMildHybridEquipmentCode: boolean;
public RetailPriceExVat: number;
public RetailPrice_IncVAT: number;
public RetailPrice_ExVAT: number;
public ModelId: number;
public VID?: string;
public ProductionDate?: string;
public FullModelYearCode?: string;
public ChassisNumber?: string;
public EligibleForIntegratedServiceCare: boolean;
public AccountType?: string;
public ConsumptionCombined?: VehicleConsumption;
public ConsumptionExtraUrban?: VehicleConsumption;
public ConsumptionUrban?: VehicleConsumption;
public WltpFuelConsumptionCombined?: VehicleConsumption;
public WltpFuelConsumptionExtraHigh?: VehicleConsumption;
public WltpFuelConsumptionHigh?: VehicleConsumption;
public WltpFuelConsumptionLow?: VehicleConsumption;
public WltpFuelConsumptionMedium?: VehicleConsumption;
public Equipment?: Equipmentv2[];
public EquipmentCategories?: VehicleEquipmentCategory[];
public EnergyEfficiencyClass?: VehicleEmissionClass;
public VehicleData?: VehicleAttribute[];
public IntegratedServiceCareOptions: VehicleIntegratedServiceCareOption[] = [];
public IspVehicleCustomerDescriptions?: string[];
public constructor(init?: Partial<VehicleDetailDto>) { (Object as any).assign(this, init); }
}
export class VehicleError
{
public Field: string;
public Message: string;
public constructor(init?: Partial<VehicleError>) { (Object as any).assign(this, init); }
}
export class GetVehicleResponse
{
public Vehicle: VehicleDetailDto;
public Errors: VehicleError[] = [];
public constructor(init?: Partial<GetVehicleResponse>) { (Object as any).assign(this, init); }
}
export class GetVehicleWithOptimalResponse extends GetVehicleResponse
{
public OptimumVehicle: VehicleDetailDto;
public constructor(init?: Partial<GetVehicleWithOptimalResponse>) { super(init); (Object as any).assign(this, init); }
}
TypeScript GetVehicleWithOptimalRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
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/jsonl
Content-Type: text/jsonl
Content-Length: length
{"VehicleIdentifier":"String","IncludeAllocatedToBackOrder":false,"Gssn":"String","IsOneAdmin":false,"MotabilityPricingId":0}
HTTP/1.1 200 OK Content-Type: text/jsonl 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"}]}