POST | /v1/{VehicleType}/Vehicle/Motability | Filter motability vehicle data |
---|
"use strict";
export class VehicleDataBase {
/** @param {{vin?:string,description?:string,model?:string,otr?:string,retailPriceExVAT?:string,actualPrice?:string,fuelType?:string,transmission?:string,transmissionType?:string,colour?:string,colourCode?:string,colourDescription?:string,commissionNumber?:string,offerAvailable?:boolean,campaignDiscountOfferTotal?:number,campaignDiscountOfferTotalCurrent?:number,campaignDiscountOfferTotalPending?:number,campaignServiceOfferTotal?:number,campaignServiceOfferTotalCurrent?:number,campaignServiceOfferTotalPending?:number,campaignCustomOfferTotal?:number,campaignPersonalisedOfferTotalCurrent?:number,campaignPersonalisedOfferTotalPending?:number,campaignPersonalisedOfferTotal?:number,campaignCustomOfferTotalCurrent?:number,campaignCustomOfferTotalPending?:number,campaignOtherOfferTotal?:number,campaignOtherOfferTotalCurrent?:number,campaignOtherOfferTotalPending?:number,retailerDiscountOfferTotal?:number,retailerDiscountOfferTotalCurrent?:number,retailerDiscountOfferTotalPending?:number,retailerServiceOfferTotal?:number,retailerServiceOfferTotalCurrent?:number,retailerServiceOfferTotalPending?:number,retailerCustomOfferTotal?:number,retailerCustomOfferTotalCurrent?:number,retailerCustomOfferTotalPending?:number,retailerWarrantyOfferTotal?:number,retailerWarrantyOfferTotalCurrent?:number,retailerWarrantyOfferTotalPending?:number,retailerOfferTotal?:number,retailerOfferTotalCurrent?:number,retailerOfferTotalPending?:number,campaignOfferTotal?:number,campaignOfferTotalCurrent?:number,campaignOfferTotalPending?:number,campaignAndOfferTotal?:number,campaignAndOfferTotalCurrent?:number,campaignAndOfferTotalPending?:number,offerTotal?:number,offerTotalCurrent?:number,offerTotalPending?:number,creation?:string,modified?:string,electricRange?:number,electricConsumption?:number,portArrivalDate?:string,daysSincePortArrival?:number,retailPriceIncVAT?:number,bodyStyle?:string,upholstery?:string,upholsteryCode?:string,upholsteryType?:string,packageNames?:string[],line?:string,currentRetailerOfferPrice?:number,retailPrice?:string,vatQualifying?:boolean,retailerId?:number,gssnId?:string,noImage?:boolean,imageUrl?:string,isAvailableOnline?:boolean,isBackOrdered?:boolean,creationDate?:string,maintenanceDate?:string,registrationNumber?:string,registrationDate?:string,mileage?:number,tradeInDate?:string,source?:string,vehicleType?:string,offerAmount?:string,offerExpiry?:string,activeOffers?:number[],campaignMessagesTotal?:number,underOffer?:boolean,isDisplayStock?:boolean,displayRetailer?:string,displayRetailerGssnId?:string,location?:string,account?:string,accountType?:string,usageCode?:string,bm7NST?:string,isSellable?:boolean,secured?:boolean,specialist?:boolean,isMotabilityRetailer?:boolean,upholsteryDescription?:string,inBackOrderAccount?:boolean,fullModelYearCode?:string,productionDate?:string,baumuster?:string,isMotability?:boolean,pipAdvanceRentalGross?:number,wpmsAdvanceRentalGross?:number,ispVehicleCustomerDescriptions?:string[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
vin;
/** @type {string} */
description;
/** @type {string} */
model;
/** @type {string} */
otr;
/** @type {string} */
retailPriceExVAT;
/** @type {string} */
actualPrice;
/** @type {string} */
fuelType;
/** @type {string} */
transmission;
/** @type {string} */
transmissionType;
/** @type {string} */
colour;
/** @type {string} */
colourCode;
/** @type {string} */
colourDescription;
/** @type {string} */
commissionNumber;
/** @type {boolean} */
offerAvailable;
/** @type {number} */
campaignDiscountOfferTotal;
/** @type {number} */
campaignDiscountOfferTotalCurrent;
/** @type {number} */
campaignDiscountOfferTotalPending;
/** @type {number} */
campaignServiceOfferTotal;
/** @type {number} */
campaignServiceOfferTotalCurrent;
/** @type {number} */
campaignServiceOfferTotalPending;
/** @type {number} */
campaignCustomOfferTotal;
/** @type {number} */
campaignPersonalisedOfferTotalCurrent;
/** @type {number} */
campaignPersonalisedOfferTotalPending;
/** @type {number} */
campaignPersonalisedOfferTotal;
/** @type {number} */
campaignCustomOfferTotalCurrent;
/** @type {number} */
campaignCustomOfferTotalPending;
/** @type {number} */
campaignOtherOfferTotal;
/** @type {number} */
campaignOtherOfferTotalCurrent;
/** @type {number} */
campaignOtherOfferTotalPending;
/** @type {number} */
retailerDiscountOfferTotal;
/** @type {number} */
retailerDiscountOfferTotalCurrent;
/** @type {number} */
retailerDiscountOfferTotalPending;
/** @type {number} */
retailerServiceOfferTotal;
/** @type {number} */
retailerServiceOfferTotalCurrent;
/** @type {number} */
retailerServiceOfferTotalPending;
/** @type {number} */
retailerCustomOfferTotal;
/** @type {number} */
retailerCustomOfferTotalCurrent;
/** @type {number} */
retailerCustomOfferTotalPending;
/** @type {number} */
retailerWarrantyOfferTotal;
/** @type {number} */
retailerWarrantyOfferTotalCurrent;
/** @type {number} */
retailerWarrantyOfferTotalPending;
/** @type {number} */
retailerOfferTotal;
/** @type {number} */
retailerOfferTotalCurrent;
/** @type {number} */
retailerOfferTotalPending;
/** @type {number} */
campaignOfferTotal;
/** @type {number} */
campaignOfferTotalCurrent;
/** @type {number} */
campaignOfferTotalPending;
/** @type {number} */
campaignAndOfferTotal;
/** @type {number} */
campaignAndOfferTotalCurrent;
/** @type {number} */
campaignAndOfferTotalPending;
/** @type {number} */
offerTotal;
/** @type {number} */
offerTotalCurrent;
/** @type {number} */
offerTotalPending;
/** @type {string} */
creation;
/** @type {string} */
modified;
/** @type {number} */
electricRange;
/** @type {number} */
electricConsumption;
/** @type {?string} */
portArrivalDate;
/** @type {?number} */
daysSincePortArrival;
/** @type {number} */
retailPriceIncVAT;
/** @type {string} */
bodyStyle;
/** @type {string} */
upholstery;
/** @type {string} */
upholsteryCode;
/** @type {string} */
upholsteryType;
/** @type {string[]} */
packageNames = [];
/** @type {string} */
line;
/** @type {number} */
currentRetailerOfferPrice;
/** @type {string} */
retailPrice;
/** @type {boolean} */
vatQualifying;
/** @type {number} */
retailerId;
/** @type {string} */
gssnId;
/** @type {boolean} */
noImage;
/** @type {string} */
imageUrl;
/** @type {boolean} */
isAvailableOnline;
/** @type {boolean} */
isBackOrdered;
/** @type {string} */
creationDate;
/** @type {string} */
maintenanceDate;
/** @type {string} */
registrationNumber;
/** @type {?string} */
registrationDate;
/** @type {?number} */
mileage;
/** @type {?string} */
tradeInDate;
/** @type {string} */
source;
/** @type {string} */
vehicleType;
/** @type {string} */
offerAmount;
/** @type {string} */
offerExpiry;
/** @type {number[]} */
activeOffers = [];
/** @type {number} */
campaignMessagesTotal;
/** @type {boolean} */
underOffer;
/** @type {boolean} */
isDisplayStock;
/** @type {string} */
displayRetailer;
/** @type {string} */
displayRetailerGssnId;
/** @type {string} */
location;
/** @type {string} */
account;
/** @type {string} */
accountType;
/** @type {string} */
usageCode;
/** @type {string} */
bm7NST;
/** @type {boolean} */
isSellable;
/** @type {boolean} */
secured;
/** @type {boolean} */
specialist;
/** @type {boolean} */
isMotabilityRetailer;
/** @type {string} */
upholsteryDescription;
/** @type {boolean} */
inBackOrderAccount;
/** @type {?string} */
fullModelYearCode;
/** @type {?string} */
productionDate;
/** @type {string} */
baumuster;
/** @type {boolean} */
isMotability;
/** @type {?number} */
pipAdvanceRentalGross;
/** @type {?number} */
wpmsAdvanceRentalGross;
/** @type {?string[]} */
ispVehicleCustomerDescriptions;
}
export class VehicleData extends VehicleDataBase {
/** @param {{engine?:string,vin?:string,description?:string,model?:string,otr?:string,retailPriceExVAT?:string,actualPrice?:string,fuelType?:string,transmission?:string,transmissionType?:string,colour?:string,colourCode?:string,colourDescription?:string,commissionNumber?:string,offerAvailable?:boolean,campaignDiscountOfferTotal?:number,campaignDiscountOfferTotalCurrent?:number,campaignDiscountOfferTotalPending?:number,campaignServiceOfferTotal?:number,campaignServiceOfferTotalCurrent?:number,campaignServiceOfferTotalPending?:number,campaignCustomOfferTotal?:number,campaignPersonalisedOfferTotalCurrent?:number,campaignPersonalisedOfferTotalPending?:number,campaignPersonalisedOfferTotal?:number,campaignCustomOfferTotalCurrent?:number,campaignCustomOfferTotalPending?:number,campaignOtherOfferTotal?:number,campaignOtherOfferTotalCurrent?:number,campaignOtherOfferTotalPending?:number,retailerDiscountOfferTotal?:number,retailerDiscountOfferTotalCurrent?:number,retailerDiscountOfferTotalPending?:number,retailerServiceOfferTotal?:number,retailerServiceOfferTotalCurrent?:number,retailerServiceOfferTotalPending?:number,retailerCustomOfferTotal?:number,retailerCustomOfferTotalCurrent?:number,retailerCustomOfferTotalPending?:number,retailerWarrantyOfferTotal?:number,retailerWarrantyOfferTotalCurrent?:number,retailerWarrantyOfferTotalPending?:number,retailerOfferTotal?:number,retailerOfferTotalCurrent?:number,retailerOfferTotalPending?:number,campaignOfferTotal?:number,campaignOfferTotalCurrent?:number,campaignOfferTotalPending?:number,campaignAndOfferTotal?:number,campaignAndOfferTotalCurrent?:number,campaignAndOfferTotalPending?:number,offerTotal?:number,offerTotalCurrent?:number,offerTotalPending?:number,creation?:string,modified?:string,electricRange?:number,electricConsumption?:number,portArrivalDate?:string,daysSincePortArrival?:number,retailPriceIncVAT?:number,bodyStyle?:string,upholstery?:string,upholsteryCode?:string,upholsteryType?:string,packageNames?:string[],line?:string,currentRetailerOfferPrice?:number,retailPrice?:string,vatQualifying?:boolean,retailerId?:number,gssnId?:string,noImage?:boolean,imageUrl?:string,isAvailableOnline?:boolean,isBackOrdered?:boolean,creationDate?:string,maintenanceDate?:string,registrationNumber?:string,registrationDate?:string,mileage?:number,tradeInDate?:string,source?:string,vehicleType?:string,offerAmount?:string,offerExpiry?:string,activeOffers?:number[],campaignMessagesTotal?:number,underOffer?:boolean,isDisplayStock?:boolean,displayRetailer?:string,displayRetailerGssnId?:string,location?:string,account?:string,accountType?:string,usageCode?:string,bm7NST?:string,isSellable?:boolean,secured?:boolean,specialist?:boolean,isMotabilityRetailer?:boolean,upholsteryDescription?:string,inBackOrderAccount?:boolean,fullModelYearCode?:string,productionDate?:string,baumuster?:string,isMotability?:boolean,pipAdvanceRentalGross?:number,wpmsAdvanceRentalGross?:number,ispVehicleCustomerDescriptions?:string[]}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
engine;
}
export class Equipment {
/** @param {{id?:number,code?:string,description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
id;
/** @type {?string} */
code;
/** @type {?string} */
description;
}
export class VehicleIdentifierData extends VehicleData {
/** @param {{retailer?:string,hasMotabilityError?:boolean,equipment?:Equipment[],engine?:string,vin?:string,description?:string,model?:string,otr?:string,retailPriceExVAT?:string,actualPrice?:string,fuelType?:string,transmission?:string,transmissionType?:string,colour?:string,colourCode?:string,colourDescription?:string,commissionNumber?:string,offerAvailable?:boolean,campaignDiscountOfferTotal?:number,campaignDiscountOfferTotalCurrent?:number,campaignDiscountOfferTotalPending?:number,campaignServiceOfferTotal?:number,campaignServiceOfferTotalCurrent?:number,campaignServiceOfferTotalPending?:number,campaignCustomOfferTotal?:number,campaignPersonalisedOfferTotalCurrent?:number,campaignPersonalisedOfferTotalPending?:number,campaignPersonalisedOfferTotal?:number,campaignCustomOfferTotalCurrent?:number,campaignCustomOfferTotalPending?:number,campaignOtherOfferTotal?:number,campaignOtherOfferTotalCurrent?:number,campaignOtherOfferTotalPending?:number,retailerDiscountOfferTotal?:number,retailerDiscountOfferTotalCurrent?:number,retailerDiscountOfferTotalPending?:number,retailerServiceOfferTotal?:number,retailerServiceOfferTotalCurrent?:number,retailerServiceOfferTotalPending?:number,retailerCustomOfferTotal?:number,retailerCustomOfferTotalCurrent?:number,retailerCustomOfferTotalPending?:number,retailerWarrantyOfferTotal?:number,retailerWarrantyOfferTotalCurrent?:number,retailerWarrantyOfferTotalPending?:number,retailerOfferTotal?:number,retailerOfferTotalCurrent?:number,retailerOfferTotalPending?:number,campaignOfferTotal?:number,campaignOfferTotalCurrent?:number,campaignOfferTotalPending?:number,campaignAndOfferTotal?:number,campaignAndOfferTotalCurrent?:number,campaignAndOfferTotalPending?:number,offerTotal?:number,offerTotalCurrent?:number,offerTotalPending?:number,creation?:string,modified?:string,electricRange?:number,electricConsumption?:number,portArrivalDate?:string,daysSincePortArrival?:number,retailPriceIncVAT?:number,bodyStyle?:string,upholstery?:string,upholsteryCode?:string,upholsteryType?:string,packageNames?:string[],line?:string,currentRetailerOfferPrice?:number,retailPrice?:string,vatQualifying?:boolean,retailerId?:number,gssnId?:string,noImage?:boolean,imageUrl?:string,isAvailableOnline?:boolean,isBackOrdered?:boolean,creationDate?:string,maintenanceDate?:string,registrationNumber?:string,registrationDate?:string,mileage?:number,tradeInDate?:string,source?:string,vehicleType?:string,offerAmount?:string,offerExpiry?:string,activeOffers?:number[],campaignMessagesTotal?:number,underOffer?:boolean,isDisplayStock?:boolean,displayRetailer?:string,displayRetailerGssnId?:string,location?:string,account?:string,accountType?:string,usageCode?:string,bm7NST?:string,isSellable?:boolean,secured?:boolean,specialist?:boolean,isMotabilityRetailer?:boolean,upholsteryDescription?:string,inBackOrderAccount?:boolean,fullModelYearCode?:string,productionDate?:string,baumuster?:string,isMotability?:boolean,pipAdvanceRentalGross?:number,wpmsAdvanceRentalGross?:number,ispVehicleCustomerDescriptions?:string[]}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
retailer;
/** @type {boolean} */
hasMotabilityError;
/** @type {Equipment[]} */
equipment = [];
}
export class VehiclesByRetailerResponse {
/** @param {{vehicles?:VehicleIdentifierData[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {VehicleIdentifierData[]} */
vehicles = [];
}
export class MotabilityVehiclesFilterRequest {
/** @param {{min?:number,max?:number,noPortArrivalDate?:boolean,vehicleType?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
min;
/** @type {number} */
max;
/** @type {boolean} */
noPortArrivalDate;
/** @type {string} */
vehicleType;
}
JavaScript MotabilityVehiclesFilterRequest 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.
POST /v1/{VehicleType}/Vehicle/Motability HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
min: 0,
max: 0,
noPortArrivalDate: False,
vehicleType: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { vehicles: [ { retailer: String, hasMotabilityError: False, equipment: [ { id: 0, code: String, description: String } ], engine: String, vin: String, description: String, model: String, otr: String, retailPriceExVAT: String, actualPrice: String, fuelType: String, transmission: String, transmissionType: String, colour: String, colourCode: String, colourDescription: String, commissionNumber: String, offerAvailable: False, campaignDiscountOfferTotal: 0, campaignDiscountOfferTotalCurrent: 0, campaignDiscountOfferTotalPending: 0, campaignServiceOfferTotal: 0, campaignServiceOfferTotalCurrent: 0, campaignServiceOfferTotalPending: 0, campaignCustomOfferTotal: 0, campaignPersonalisedOfferTotalCurrent: 0, campaignPersonalisedOfferTotalPending: 0, campaignPersonalisedOfferTotal: 0, campaignCustomOfferTotalCurrent: 0, campaignCustomOfferTotalPending: 0, campaignOtherOfferTotal: 0, campaignOtherOfferTotalCurrent: 0, campaignOtherOfferTotalPending: 0, retailerDiscountOfferTotal: 0, retailerDiscountOfferTotalCurrent: 0, retailerDiscountOfferTotalPending: 0, retailerServiceOfferTotal: 0, retailerServiceOfferTotalCurrent: 0, retailerServiceOfferTotalPending: 0, retailerCustomOfferTotal: 0, retailerCustomOfferTotalCurrent: 0, retailerCustomOfferTotalPending: 0, retailerWarrantyOfferTotal: 0, retailerWarrantyOfferTotalCurrent: 0, retailerWarrantyOfferTotalPending: 0, retailerOfferTotal: 0, retailerOfferTotalCurrent: 0, retailerOfferTotalPending: 0, campaignOfferTotal: 0, campaignOfferTotalCurrent: 0, campaignOfferTotalPending: 0, campaignAndOfferTotal: 0, campaignAndOfferTotalCurrent: 0, campaignAndOfferTotalPending: 0, offerTotal: 0, offerTotalCurrent: 0, offerTotalPending: 0, creation: String, modified: String, electricRange: 0, electricConsumption: 0, portArrivalDate: 0001-01-01, daysSincePortArrival: 0, retailPriceIncVAT: 0, bodyStyle: String, upholstery: String, upholsteryCode: String, upholsteryType: String, packageNames: [ String ], line: String, currentRetailerOfferPrice: 0, retailPrice: String, vatQualifying: False, retailerId: 0, gssnId: String, noImage: False, imageUrl: String, isAvailableOnline: False, isBackOrdered: False, creationDate: String, maintenanceDate: String, registrationNumber: String, registrationDate: 0001-01-01, mileage: 0, tradeInDate: 0001-01-01, source: String, vehicleType: String, offerAmount: String, offerExpiry: String, activeOffers: [ 0 ], campaignMessagesTotal: 0, underOffer: False, isDisplayStock: False, displayRetailer: String, displayRetailerGssnId: String, location: String, account: String, accountType: String, usageCode: String, bm7NST: String, isSellable: False, secured: False, specialist: False, isMotabilityRetailer: False, upholsteryDescription: String, inBackOrderAccount: False, fullModelYearCode: String, productionDate: 0001-01-01, baumuster: String, isMotability: False, pipAdvanceRentalGross: 0, wpmsAdvanceRentalGross: 0, ispVehicleCustomerDescriptions: [ String ] } ] }