POST | /v1/OnlineShowroom/Stock | Search for Online Showroom Stock | Calls Vehicle Data API online showroom stock endpoint and searches for vehicles given a list of retailers. The results are used to populate the Online Showroom Stock datatable grid in OneAdmin |
---|
"use strict";
export class StockDataRow {
/** @param {{commissionNumber?:string,description?:string,salesDescriptionLong?:string,model?:string,colour?:string,colourGroup?:string,fuelType?:string,transmission?:string,transmissionType?:string,packages?:string,lines?:string,upholstery?:string,upholsteryCode?:string,displayStockAgent?:string,location?:string,vin?:string,vid?:string,vehicleType?:string,vehicleClass?:string,creationDate?:string,lastUpdated?:string,productionDate?:string,portArrivalDate?:string,combinedGrossOfferValue?:number,currentLocation?:string,notVisibleOnlineShowroom?:boolean,nvosReason?:string,nvosReasonOneAdminExcluded?:boolean,nvosReasonLinkedToBackOrder?:boolean,includedAfterDeduplication?:boolean,unique?:boolean,duplicate?:boolean,duplicateGroup?:number,lowestComm?:boolean,rule?:string,fin?:string,chassisNumber?:string,modelYear?:string,modelYearCode?:string,halfModelYearCode?:string,fullModelYearCode?:string,bodyStyle?:string,engine?:string,cesarIdShipToParty?:string,vehicleUsageCode?:string,acceleration?:number,bootCapacity?:number,topSpeed?:number,driveConcept?:string,combustionPowerHp?:number,electricPowerKw?:number,electricPowerHp?:number,combinedPowerKw?:number,combinedPowerHP?:number,underOffer?:boolean,isSellable?:boolean,mbukSecured?:boolean,isDisplayStock?:boolean,isSpecialistCar?:boolean,account?:string,productRange?:string,isAMG?:boolean,actualPrice?:number,retailPrice_ExVAT?:number,retailPrice_IncVAT?:number,otr?:number,nst?:string,bm7NST?:string,electricRange?:number,electricConsumption?:number,emission?:number,emissionDirective?:string,emissionCombined?:string,emissionExtraUrban?:string,emissionUrban?:string,energyEfficiencyClass?:string,wltpEmissionCombined?:string,wltpCombined?:string,wltpLow?:string,wltpMedium?:string,wltpHigh?:string,wltpExtraHigh?:string,totalMoneyOffersExclDiscretionary?:number,discretionaryMoneyOffer?:number,totalMoneyOffersInclDiscretionary?:number,nonDiscretionaryNMOCount?:number,nonDiscretionaryMOCount?:number,discretionaryNMOCount?:number,discretionaryMOCount?:number,totalOfferVIPAmount?:number,stockLevelIndicator?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
commissionNumber;
/** @type {string} */
description;
/** @type {string} */
salesDescriptionLong;
/** @type {string} */
model;
/** @type {string} */
colour;
/** @type {string} */
colourGroup;
/** @type {string} */
fuelType;
/** @type {string} */
transmission;
/** @type {string} */
transmissionType;
/** @type {string} */
packages;
/** @type {string} */
lines;
/** @type {string} */
upholstery;
/** @type {string} */
upholsteryCode;
/** @type {string} */
displayStockAgent;
/** @type {string} */
location;
/** @type {string} */
vin;
/** @type {string} */
vid;
/** @type {string} */
vehicleType;
/** @type {string} */
vehicleClass;
/** @type {string} */
creationDate;
/** @type {?string} */
lastUpdated;
/** @type {?string} */
productionDate;
/** @type {?string} */
portArrivalDate;
/** @type {number} */
combinedGrossOfferValue;
/** @type {string} */
currentLocation;
/** @type {boolean} */
notVisibleOnlineShowroom;
/** @type {string} */
nvosReason;
/** @type {boolean} */
nvosReasonOneAdminExcluded;
/** @type {boolean} */
nvosReasonLinkedToBackOrder;
/** @type {boolean} */
includedAfterDeduplication;
/** @type {boolean} */
unique;
/** @type {boolean} */
duplicate;
/** @type {?number} */
duplicateGroup;
/** @type {boolean} */
lowestComm;
/** @type {string} */
rule;
/** @type {string} */
fin;
/** @type {string} */
chassisNumber;
/** @type {string} */
modelYear;
/** @type {string} */
modelYearCode;
/** @type {string} */
halfModelYearCode;
/** @type {string} */
fullModelYearCode;
/** @type {string} */
bodyStyle;
/** @type {string} */
engine;
/** @type {string} */
cesarIdShipToParty;
/** @type {string} */
vehicleUsageCode;
/** @type {?number} */
acceleration;
/** @type {?number} */
bootCapacity;
/** @type {?number} */
topSpeed;
/** @type {string} */
driveConcept;
/** @type {?number} */
combustionPowerHp;
/** @type {?number} */
electricPowerKw;
/** @type {?number} */
electricPowerHp;
/** @type {?number} */
combinedPowerKw;
/** @type {?number} */
combinedPowerHP;
/** @type {boolean} */
underOffer;
/** @type {boolean} */
isSellable;
/** @type {boolean} */
mbukSecured;
/** @type {boolean} */
isDisplayStock;
/** @type {boolean} */
isSpecialistCar;
/** @type {string} */
account;
/** @type {string} */
productRange;
/** @type {boolean} */
isAMG;
/** @type {number} */
actualPrice;
/** @type {number} */
retailPrice_ExVAT;
/** @type {number} */
retailPrice_IncVAT;
/** @type {number} */
otr;
/** @type {string} */
nst;
/** @type {string} */
bm7NST;
/** @type {?number} */
electricRange;
/** @type {?number} */
electricConsumption;
/** @type {?number} */
emission;
/** @type {string} */
emissionDirective;
/** @type {string} */
emissionCombined;
/** @type {string} */
emissionExtraUrban;
/** @type {string} */
emissionUrban;
/** @type {string} */
energyEfficiencyClass;
/** @type {string} */
wltpEmissionCombined;
/** @type {string} */
wltpCombined;
/** @type {string} */
wltpLow;
/** @type {string} */
wltpMedium;
/** @type {string} */
wltpHigh;
/** @type {string} */
wltpExtraHigh;
/** @type {number} */
totalMoneyOffersExclDiscretionary;
/** @type {number} */
discretionaryMoneyOffer;
/** @type {number} */
totalMoneyOffersInclDiscretionary;
/** @type {number} */
nonDiscretionaryNMOCount;
/** @type {number} */
nonDiscretionaryMOCount;
/** @type {number} */
discretionaryNMOCount;
/** @type {number} */
discretionaryMOCount;
/** @type {number} */
totalOfferVIPAmount;
/** @type {?string} */
stockLevelIndicator;
}
export class OnlineShowroomStockResponse {
/** @param {{totalVehicles?:number,vehicles?:StockDataRow[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
totalVehicles;
/** @type {StockDataRow[]} */
vehicles = [];
}
export class OnlineShowroomStockRequest {
/** @param {{gssns?:string[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string[]} */
gssns = [];
}
JavaScript OnlineShowroomStockRequest 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/OnlineShowroom/Stock HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
gssns:
[
String
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { totalVehicles: 0, vehicles: [ { commissionNumber: String, description: String, salesDescriptionLong: String, model: String, colour: String, colourGroup: String, fuelType: String, transmission: String, transmissionType: String, packages: String, lines: String, upholstery: String, upholsteryCode: String, displayStockAgent: String, location: String, vin: String, vid: String, vehicleType: String, vehicleClass: String, creationDate: 0001-01-01, lastUpdated: 0001-01-01, productionDate: 0001-01-01, portArrivalDate: 0001-01-01, combinedGrossOfferValue: 0, currentLocation: String, notVisibleOnlineShowroom: False, nvosReason: String, nvosReasonOneAdminExcluded: False, nvosReasonLinkedToBackOrder: False, includedAfterDeduplication: False, unique: False, duplicate: False, duplicateGroup: 0, lowestComm: False, rule: String, fin: String, chassisNumber: String, modelYear: String, modelYearCode: String, halfModelYearCode: String, fullModelYearCode: String, bodyStyle: String, engine: String, cesarIdShipToParty: String, vehicleUsageCode: String, acceleration: 0, bootCapacity: 0, topSpeed: 0, driveConcept: String, combustionPowerHp: 0, electricPowerKw: 0, electricPowerHp: 0, combinedPowerKw: 0, combinedPowerHP: 0, underOffer: False, isSellable: False, mbukSecured: False, isDisplayStock: False, isSpecialistCar: False, account: String, productRange: String, isAMG: False, actualPrice: 0, retailPrice_ExVAT: 0, retailPrice_IncVAT: 0, otr: 0, nst: String, bm7NST: String, electricRange: 0, electricConsumption: 0, emission: 0, emissionDirective: String, emissionCombined: String, emissionExtraUrban: String, emissionUrban: String, energyEfficiencyClass: String, wltpEmissionCombined: String, wltpCombined: String, wltpLow: String, wltpMedium: String, wltpHigh: String, wltpExtraHigh: String, totalMoneyOffersExclDiscretionary: 0, discretionaryMoneyOffer: 0, totalMoneyOffersInclDiscretionary: 0, nonDiscretionaryNMOCount: 0, nonDiscretionaryMOCount: 0, discretionaryNMOCount: 0, discretionaryMOCount: 0, totalOfferVIPAmount: 0, stockLevelIndicator: String } ] }