Mercedes.Agency.Orchestration.API

<back to all web services

CarConfiguratorStockRequest

CarConfigurator
Requires Authentication
The following routes are available for this service:
POST/v1/CarConfiguratorStockValidate and save a car configurator code for a vehicle searchThis endpoint calls Agency API to validate and save a car configurator code. The code is validated and saved in the database and returns a response from a third party CCS which provides car configuration details. These get saved to open search and used to perform a vehicle search
"use strict";
export class KeyInformation {
    /** @param {{BM7NST?:string,ConfigurationDate?:string,ModelYear?:string,HalfYear?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    BM7NST;
    /** @type {?string} */
    ConfigurationDate;
    /** @type {?string} */
    ModelYear;
    /** @type {?string} */
    HalfYear;
}
export class EquipmentCache {
    /** @param {{Code?:string,Description?:string,StandardFlag?:string,Price?:number,Category?:string,Importance?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Code;
    /** @type {string} */
    Description;
    /** @type {string} */
    StandardFlag;
    /** @type {number} */
    Price;
    /** @type {string} */
    Category;
    /** @type {string} */
    Importance;
}
export class OrderingOptions {
    /** @param {{Interior?:string[],Exterior?:string[],Options?:string[],WheelOptions?:EquipmentCache[],TrimOptions?:EquipmentCache[],OptionCodes?:EquipmentCache[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string[]} */
    Interior;
    /** @type {?string[]} */
    Exterior;
    /** @type {?string[]} */
    Options;
    /** @type {EquipmentCache[]} */
    WheelOptions = [];
    /** @type {EquipmentCache[]} */
    TrimOptions = [];
    /** @type {EquipmentCache[]} */
    OptionCodes = [];
}
export class CarConfiguratorResponse {
    /** @param {{Name?:string,KeyInformation?:KeyInformation,OrderingOptions?:OrderingOptions,ResponseStatus?:ResponseStatus,ConfiguratorCode?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    Name;
    /** @type {?KeyInformation} */
    KeyInformation;
    /** @type {?OrderingOptions} */
    OrderingOptions;
    /** @type {ResponseStatus} */
    ResponseStatus;
    /** @type {?string} */
    ConfiguratorCode;
}
export class BackOrderVehicleDetailsBrand {
    /** @param {{Description?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    Description;
}
export class Engine {
    /** @param {{Id?:number,Badge?:string,CubicCapacity?:number,Cyclinders?:number,HorsePower?:string,Kw?:string,Selected?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {?string} */
    Badge;
    /** @type {number} */
    CubicCapacity;
    /** @type {number} */
    Cyclinders;
    /** @type {?string} */
    HorsePower;
    /** @type {?string} */
    Kw;
    /** @type {boolean} */
    Selected;
}
export class VehicleAuditDetails {
    /** @param {{UserId?:string,Status?:boolean,Notes?:string,CreationDate?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    UserId;
    /** @type {boolean} */
    Status;
    /** @type {?string} */
    Notes;
    /** @type {?string} */
    CreationDate;
}
export class RetailerService {
    /** @param {{Id?:number,Description?:string,Priority?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {?string} */
    Description;
    /** @type {boolean} */
    Priority;
}
export class RetailerServices {
    /** @param {{New?:RetailerService[],Used?:RetailerService[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?RetailerService[]} */
    New;
    /** @type {?RetailerService[]} */
    Used;
}
export class RetailerOpeningTime {
    /** @param {{Day?:string,OpenFrom?:string,OpenTo?:string,Special?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Day;
    /** @type {string} */
    OpenFrom;
    /** @type {string} */
    OpenTo;
    /** @type {string} */
    Special;
}
export class RetailerOpeningTimes {
    /** @param {{New?:RetailerOpeningTime[],Used?:RetailerOpeningTime[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {RetailerOpeningTime[]} */
    New = [];
    /** @type {RetailerOpeningTime[]} */
    Used = [];
}
export class Retailer {
    /** @param {{Id?:number,GssnId?:string,Description?:string,Street?:string,City?:string,District?:string,Postcode?:string,GoogleMapPostcode?:string,Phone?:string,Fax?:string,Email?:string,Website?:string,Latitude?:number,Longitude?:number,RetailerGroup_Id?:number,RetailerGroupId?:string,RetailerGroupName?:string,Distance?:number,PaymentServiceGuid?:string,IsOnline?:boolean,IsNewCarRetailer?:boolean,IsUsedCarRetailer?:boolean,IsCentralRetailer?:boolean,ChatEnabled?:boolean,TradeInEnabled?:boolean,DisplayPhoneNumberNew?:string,DisplayPhoneNumberUsed?:string,Services?:RetailerServices,smart?:boolean,smartDescription?:string,smartWebsite?:string,smartEmail?:string,smartPhone?:string,AdditionalInformation?:string,LegacyId?:string,DriveTime?:number,Agent?:boolean,Port?:number,PortName?:string,MarketAreaId?:number,MarketAreaName?:string,MaintenanceDate?:string,MaintenanceSource?:string,STPAccountNumbers?:string,CampaignExcluded?:boolean,DigitalLoungeParentGssnId?:string,SendLeadsToDigitalLoungeParent?:boolean,IsExcludedFromImport?:boolean,OpeningTimes?:RetailerOpeningTimes}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {?string} */
    GssnId;
    /** @type {?string} */
    Description;
    /** @type {?string} */
    Street;
    /** @type {?string} */
    City;
    /** @type {?string} */
    District;
    /** @type {?string} */
    Postcode;
    /** @type {?string} */
    GoogleMapPostcode;
    /** @type {?string} */
    Phone;
    /** @type {?string} */
    Fax;
    /** @type {?string} */
    Email;
    /** @type {?string} */
    Website;
    /** @type {number} */
    Latitude;
    /** @type {number} */
    Longitude;
    /** @type {?number} */
    RetailerGroup_Id;
    /** @type {?string} */
    RetailerGroupId;
    /** @type {?string} */
    RetailerGroupName;
    /** @type {number} */
    Distance;
    /** @type {?string} */
    PaymentServiceGuid;
    /** @type {?boolean} */
    IsOnline;
    /** @type {?boolean} */
    IsNewCarRetailer;
    /** @type {?boolean} */
    IsUsedCarRetailer;
    /** @type {boolean} */
    IsCentralRetailer;
    /** @type {boolean} */
    ChatEnabled;
    /** @type {boolean} */
    TradeInEnabled;
    /** @type {?string} */
    DisplayPhoneNumberNew;
    /** @type {?string} */
    DisplayPhoneNumberUsed;
    /** @type {?RetailerServices} */
    Services;
    /** @type {boolean} */
    smart;
    /** @type {?string} */
    smartDescription;
    /** @type {?string} */
    smartWebsite;
    /** @type {?string} */
    smartEmail;
    /** @type {?string} */
    smartPhone;
    /** @type {?string} */
    AdditionalInformation;
    /** @type {?string} */
    LegacyId;
    /** @type {number} */
    DriveTime;
    /** @type {boolean} */
    Agent;
    /** @type {?number} */
    Port;
    /** @type {?string} */
    PortName;
    /** @type {?number} */
    MarketAreaId;
    /** @type {?string} */
    MarketAreaName;
    /** @type {?string} */
    MaintenanceDate;
    /** @type {?string} */
    MaintenanceSource;
    /** @type {?string} */
    STPAccountNumbers;
    /** @type {?boolean} */
    CampaignExcluded;
    /** @type {?string} */
    DigitalLoungeParentGssnId;
    /** @type {boolean} */
    SendLeadsToDigitalLoungeParent;
    /** @type {boolean} */
    IsExcludedFromImport;
    /** @type {?RetailerOpeningTimes} */
    OpeningTimes;
}
export class Media {
    /** @param {{ImageCount?:number,MainImageUrl?:string,MainImageUrlMobile?:string,NoImage?:boolean,ThreeSixtyDegreeImageUrls?:string[],ThreeSixtyDegreeMobileImageUrls?:string[],VehicleImageUrls?:string[],VehicleMobileImageUrls?:string[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    ImageCount;
    /** @type {?string} */
    MainImageUrl;
    /** @type {?string} */
    MainImageUrlMobile;
    /** @type {boolean} */
    NoImage;
    /** @type {?string[]} */
    ThreeSixtyDegreeImageUrls;
    /** @type {?string[]} */
    ThreeSixtyDegreeMobileImageUrls;
    /** @type {?string[]} */
    VehicleImageUrls;
    /** @type {?string[]} */
    VehicleMobileImageUrls;
}
/** @typedef {'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'} */
export var OfferPriceProductType;
(function (OfferPriceProductType) {
    OfferPriceProductType["LIST_PRICE"] = "LIST_PRICE"
    OfferPriceProductType["NUMBER_PLATE_FEE"] = "NUMBER_PLATE_FEE"
    OfferPriceProductType["DELIVERY_CHARGE"] = "DELIVERY_CHARGE"
    OfferPriceProductType["FUEL_CHARGE"] = "FUEL_CHARGE"
    OfferPriceProductType["MANUFACTURER_OFFER"] = "MANUFACTURER_OFFER"
    OfferPriceProductType["PERSONALISED_MONEYOFFER"] = "PERSONALISED_MONEYOFFER"
    OfferPriceProductType["PERSONALISED_NONMONEYOFFER"] = "PERSONALISED_NONMONEYOFFER"
    OfferPriceProductType["PERSONALISED_NONMONEYOFFER_NEG"] = "PERSONALISED_NONMONEYOFFER_NEG"
    OfferPriceProductType["SERVICE"] = "SERVICE"
    OfferPriceProductType["SERVICE_NEG"] = "SERVICE_NEG"
    OfferPriceProductType["GOVERNMENT_GRANT"] = "GOVERNMENT_GRANT"
    OfferPriceProductType["OUTRIGHT_PURCHASE_DISCOUNT"] = "OUTRIGHT_PURCHASE_DISCOUNT"
    OfferPriceProductType["VIP_OFFER"] = "VIP_OFFER"
    OfferPriceProductType["WALLBOX_OFFER"] = "WALLBOX_OFFER"
    OfferPriceProductType["WALLBOX_OFFER_NEG"] = "WALLBOX_OFFER_NEG"
    OfferPriceProductType["ROAD_FUND_LICENCE"] = "ROAD_FUND_LICENCE"
    OfferPriceProductType["FIRST_REGISTRATION_FEE"] = "FIRST_REGISTRATION_FEE"
    OfferPriceProductType["NOT_FOUND"] = "NOT_FOUND"
    OfferPriceProductType["ACCESSORY_OFFER"] = "ACCESSORY_OFFER"
    OfferPriceProductType["ACCESSORY_OFFER_NEG"] = "ACCESSORY_OFFER_NEG"
    OfferPriceProductType["MOTABILITY_DISCOUNT"] = "MOTABILITY_DISCOUNT"
})(OfferPriceProductType || (OfferPriceProductType = {}));
export class Price {
    /** @param {{Id?:string,Description?:string,Net?:number,VAT?:number,Gross?:number,Product?:OfferPriceProductType}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Id;
    /** @type {string} */
    Description;
    /** @type {number} */
    Net;
    /** @type {number} */
    VAT;
    /** @type {number} */
    Gross;
    /** @type {OfferPriceProductType} */
    Product;
}
export class Consumption {
    /** @param {{Id?:number,Lkm?:number,Mpg?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {number} */
    Lkm;
    /** @type {number} */
    Mpg;
}
export class EmissionClass {
    /** @param {{Colour?:string,Rating?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    Colour;
    /** @type {?string} */
    Rating;
}
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 Equipmentv2 extends Equipment {
    /** @param {{Importance?:number,IsAdditional?:boolean,Id?:number,Code?:string,Description?:string}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {number} */
    Importance;
    /** @type {boolean} */
    IsAdditional;
}
export class EquipmentCategoryv2 {
    /** @param {{Order?:number,Code?:string,Description?:string,Equipment?:Equipmentv2[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Order;
    /** @type {?string} */
    Code;
    /** @type {?string} */
    Description;
    /** @type {?Equipmentv2[]} */
    Equipment;
}
export class VehicleAttribute {
    /** @param {{Description?:string,Value?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    Description;
    /** @type {?string} */
    Value;
}
export class IntegratedServiceCareOptions {
    /** @param {{OptionCode?:string,BM7NST?:string,FullModelYear?:string,IntegratedProductType?:string,CustomerDescription?:string,OneAgentProductType?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    OptionCode;
    /** @type {?string} */
    BM7NST;
    /** @type {?string} */
    FullModelYear;
    /** @type {?string} */
    IntegratedProductType;
    /** @type {?string} */
    CustomerDescription;
    /** @type {?string} */
    OneAgentProductType;
}
export class BackOrderVehicleDetails {
    /** @param {{Vin?:string,CommissionNumber?:string,Description?:string,ShortDescription?:string,ModelId?:number,Model?:string,FullModelYearCode?:string,BrandId?:number,Brand?:BackOrderVehicleDetailsBrand,RetailerId?:number,ImageUrl?:string,Colour?:string,ColourCode?:string,FuelType?:string,FuelTypeId?:number,Transmission?:string,TransmissionType?:string,Engine?:Engine,EngineBadge?:string,Package?:string,Line?:string,Upholstery?:string,UpholsteryCode?:string,UsageCode?:string,Account?:string,AccountType?:string,NST?:string,Baumuster?:string,ElectricRange?:number,ElectricConsumption?:number,ActualPrice?:number,OTRPrice?:number,RetailPriceExVat?:number,P11D?:number,VehicleType?:string,UpholsteryDescription?:string,UpholsteryType?:string,BodyStyle?:string,BodyStyleStyleCode?:string,BodyStyleStyleCodeElectric?:string,BodyStyleStyleCodeHybrid?:string,AvailablePackages?:string[],Mapped_Line?:number,Secured?:boolean,Bm7NST?:string,IsAvailableOnline?:boolean,IsSpecialistCar?:boolean,IsSellable?:boolean,UnderOffer?:boolean,VehicleAuditDetails?:VehicleAuditDetails[],Retailer?:Retailer,Media?:Media,Emission?:number,ColourGroup?:string,VehicleClass?:string,ProductRange?:string,IsHOBackOrderAccountVehicle?:boolean,IsAllocatedToBackOrder?:boolean,InBackOrderAccount?:boolean,DeliveryCharge?:number,DeliveryChargeNet?:number,DeliveryChargeVAT?:number,Plates?:number,PlatesNet?:number,PlatesVAT?:number,FuelCharge?:number,FuelChargeNet?:number,FuelChargeVAT?:number,RetailPrice_ExVAT?:number,RetailPrice_IncVAT?:number,VED_Year1?:number,VED_Year2?:number,FirstRegFee?:number,OTR_Value?:number,OTR?:number,Prices?:Price[],ProductionDate?:string,PortArrivalDate?:string,Location?:string,IsDisplayStock?:boolean,DisplayRetailerId?:number,DisplayRetailer?:string,DisplayRetailerGssnId?:string,DisplayRetailerMarketAreaId?:number,IsSmartDisplayRetailer?:boolean,ColourDescription?:string,Creation?:string,Modified?:string,VATQualifyingNumber?:number,VATQualifying?:boolean,CurrentRetailerOfferPrice?:number,GssnId?:string,NoImage?:boolean,RegistrationNumber?:string,RegistrationDate?:string,Mileage?:number,TradeInDate?:string,VID?:string,EmissionCombined?:string,EmissionDirective?:string,NormalisedEmissionDirective?:string,HasMildHybridEquipmentCode?:boolean,Acceleration?:number,ChassisNumber?:string,NumberOfDoors?:string,NumberOfSeats?:string,SpecialInfo?:boolean,EligibleForIntegratedServiceCare?:boolean,ConsumptionCombined?:Consumption,ConsumptionExtraUrban?:Consumption,ConsumptionUrban?:Consumption,WltpFuelConsumptionCombined?:Consumption,WltpFuelConsumptionExtraHigh?:Consumption,WltpFuelConsumptionHigh?:Consumption,WltpFuelConsumptionLow?:Consumption,WltpFuelConsumptionMedium?:Consumption,EnergyEfficiencyClass?:EmissionClass,Equipment?:Equipmentv2[],EquipmentAdditional?:Equipment[],EquipmentCategories?:EquipmentCategoryv2[],VehicleData?:VehicleAttribute[],IntegratedServiceCareOptions?:IntegratedServiceCareOptions[],IspVehicleCustomerDescriptions?:string[],MarketingCode?:string,EligibleForMaTransfer?:boolean,ConfirmedProductionDate?:string,ForecastedArrivalDate?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    Vin;
    /** @type {?string} */
    CommissionNumber;
    /** @type {?string} */
    Description;
    /** @type {?string} */
    ShortDescription;
    /** @type {number} */
    ModelId;
    /** @type {?string} */
    Model;
    /** @type {?string} */
    FullModelYearCode;
    /** @type {?number} */
    BrandId;
    /** @type {?BackOrderVehicleDetailsBrand} */
    Brand;
    /** @type {number} */
    RetailerId;
    /** @type {?string} */
    ImageUrl;
    /** @type {?string} */
    Colour;
    /** @type {?string} */
    ColourCode;
    /** @type {?string} */
    FuelType;
    /** @type {number} */
    FuelTypeId;
    /** @type {?string} */
    Transmission;
    /** @type {?string} */
    TransmissionType;
    /** @type {?Engine} */
    Engine;
    /** @type {?string} */
    EngineBadge;
    /** @type {?string} */
    Package;
    /** @type {?string} */
    Line;
    /** @type {?string} */
    Upholstery;
    /** @type {?string} */
    UpholsteryCode;
    /** @type {?string} */
    UsageCode;
    /** @type {?string} */
    Account;
    /** @type {?string} */
    AccountType;
    /** @type {?string} */
    NST;
    /** @type {?string} */
    Baumuster;
    /** @type {?number} */
    ElectricRange;
    /** @type {?number} */
    ElectricConsumption;
    /** @type {?number} */
    ActualPrice;
    /** @type {number} */
    OTRPrice;
    /** @type {number} */
    RetailPriceExVat;
    /** @type {number} */
    P11D;
    /** @type {?string} */
    VehicleType;
    /** @type {?string} */
    UpholsteryDescription;
    /** @type {?string} */
    UpholsteryType;
    /** @type {?string} */
    BodyStyle;
    /** @type {?string} */
    BodyStyleStyleCode;
    /** @type {?string} */
    BodyStyleStyleCodeElectric;
    /** @type {?string} */
    BodyStyleStyleCodeHybrid;
    /** @type {?string[]} */
    AvailablePackages;
    /** @type {?number} */
    Mapped_Line;
    /** @type {boolean} */
    Secured;
    /** @type {?string} */
    Bm7NST;
    /** @type {boolean} */
    IsAvailableOnline;
    /** @type {boolean} */
    IsSpecialistCar;
    /** @type {boolean} */
    IsSellable;
    /** @type {boolean} */
    UnderOffer;
    /** @type {?VehicleAuditDetails[]} */
    VehicleAuditDetails;
    /** @type {?Retailer} */
    Retailer;
    /** @type {?Media} */
    Media;
    /** @type {?number} */
    Emission;
    /** @type {?string} */
    ColourGroup;
    /** @type {?string} */
    VehicleClass;
    /** @type {?string} */
    ProductRange;
    /** @type {boolean} */
    IsHOBackOrderAccountVehicle;
    /** @type {boolean} */
    IsAllocatedToBackOrder;
    /** @type {boolean} */
    InBackOrderAccount;
    /** @type {number} */
    DeliveryCharge;
    /** @type {?number} */
    DeliveryChargeNet;
    /** @type {?number} */
    DeliveryChargeVAT;
    /** @type {number} */
    Plates;
    /** @type {?number} */
    PlatesNet;
    /** @type {?number} */
    PlatesVAT;
    /** @type {number} */
    FuelCharge;
    /** @type {?number} */
    FuelChargeNet;
    /** @type {?number} */
    FuelChargeVAT;
    /** @type {number} */
    RetailPrice_ExVAT;
    /** @type {number} */
    RetailPrice_IncVAT;
    /** @type {number} */
    VED_Year1;
    /** @type {number} */
    VED_Year2;
    /** @type {number} */
    FirstRegFee;
    /** @type {number} */
    OTR_Value;
    /** @type {number} */
    OTR;
    /** @type {?Price[]} */
    Prices;
    /** @type {?string} */
    ProductionDate;
    /** @type {?string} */
    PortArrivalDate;
    /** @type {?string} */
    Location;
    /** @type {boolean} */
    IsDisplayStock;
    /** @type {?number} */
    DisplayRetailerId;
    /** @type {?string} */
    DisplayRetailer;
    /** @type {?string} */
    DisplayRetailerGssnId;
    /** @type {?number} */
    DisplayRetailerMarketAreaId;
    /** @type {?boolean} */
    IsSmartDisplayRetailer;
    /** @type {?string} */
    ColourDescription;
    /** @type {?string} */
    Creation;
    /** @type {?string} */
    Modified;
    /** @type {?number} */
    VATQualifyingNumber;
    /** @type {boolean} */
    VATQualifying;
    /** @type {number} */
    CurrentRetailerOfferPrice;
    /** @type {?string} */
    GssnId;
    /** @type {boolean} */
    NoImage;
    /** @type {?string} */
    RegistrationNumber;
    /** @type {?string} */
    RegistrationDate;
    /** @type {?number} */
    Mileage;
    /** @type {?string} */
    TradeInDate;
    /** @type {?string} */
    VID;
    /** @type {?string} */
    EmissionCombined;
    /** @type {?string} */
    EmissionDirective;
    /** @type {?string} */
    NormalisedEmissionDirective;
    /** @type {boolean} */
    HasMildHybridEquipmentCode;
    /** @type {?number} */
    Acceleration;
    /** @type {?string} */
    ChassisNumber;
    /** @type {?string} */
    NumberOfDoors;
    /** @type {?string} */
    NumberOfSeats;
    /** @type {boolean} */
    SpecialInfo;
    /** @type {boolean} */
    EligibleForIntegratedServiceCare;
    /** @type {?Consumption} */
    ConsumptionCombined;
    /** @type {?Consumption} */
    ConsumptionExtraUrban;
    /** @type {?Consumption} */
    ConsumptionUrban;
    /** @type {?Consumption} */
    WltpFuelConsumptionCombined;
    /** @type {?Consumption} */
    WltpFuelConsumptionExtraHigh;
    /** @type {?Consumption} */
    WltpFuelConsumptionHigh;
    /** @type {?Consumption} */
    WltpFuelConsumptionLow;
    /** @type {?Consumption} */
    WltpFuelConsumptionMedium;
    /** @type {?EmissionClass} */
    EnergyEfficiencyClass;
    /** @type {?Equipmentv2[]} */
    Equipment;
    /** @type {?Equipment[]} */
    EquipmentAdditional;
    /** @type {?EquipmentCategoryv2[]} */
    EquipmentCategories;
    /** @type {?VehicleAttribute[]} */
    VehicleData;
    /** @type {?IntegratedServiceCareOptions[]} */
    IntegratedServiceCareOptions;
    /** @type {?string[]} */
    IspVehicleCustomerDescriptions;
    /** @type {?string} */
    MarketingCode;
    /** @type {boolean} */
    EligibleForMaTransfer;
    /** @type {?string} */
    ConfirmedProductionDate;
    /** @type {?string} */
    ForecastedArrivalDate;
}
export class Package {
    /** @param {{Id?:number,Description?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    Id;
    /** @type {?string} */
    Description;
}
export class BackOrderVehicleDetailsWithPackages extends BackOrderVehicleDetails {
    /** @param {{Packages?:Package[],PackageNames?:string,Vin?:string,CommissionNumber?:string,Description?:string,ShortDescription?:string,ModelId?:number,Model?:string,FullModelYearCode?:string,BrandId?:number,Brand?:BackOrderVehicleDetailsBrand,RetailerId?:number,ImageUrl?:string,Colour?:string,ColourCode?:string,FuelType?:string,FuelTypeId?:number,Transmission?:string,TransmissionType?:string,Engine?:Engine,EngineBadge?:string,Package?:string,Line?:string,Upholstery?:string,UpholsteryCode?:string,UsageCode?:string,Account?:string,AccountType?:string,NST?:string,Baumuster?:string,ElectricRange?:number,ElectricConsumption?:number,ActualPrice?:number,OTRPrice?:number,RetailPriceExVat?:number,P11D?:number,VehicleType?:string,UpholsteryDescription?:string,UpholsteryType?:string,BodyStyle?:string,BodyStyleStyleCode?:string,BodyStyleStyleCodeElectric?:string,BodyStyleStyleCodeHybrid?:string,AvailablePackages?:string[],Mapped_Line?:number,Secured?:boolean,Bm7NST?:string,IsAvailableOnline?:boolean,IsSpecialistCar?:boolean,IsSellable?:boolean,UnderOffer?:boolean,VehicleAuditDetails?:VehicleAuditDetails[],Retailer?:Retailer,Media?:Media,Emission?:number,ColourGroup?:string,VehicleClass?:string,ProductRange?:string,IsHOBackOrderAccountVehicle?:boolean,IsAllocatedToBackOrder?:boolean,InBackOrderAccount?:boolean,DeliveryCharge?:number,DeliveryChargeNet?:number,DeliveryChargeVAT?:number,Plates?:number,PlatesNet?:number,PlatesVAT?:number,FuelCharge?:number,FuelChargeNet?:number,FuelChargeVAT?:number,RetailPrice_ExVAT?:number,RetailPrice_IncVAT?:number,VED_Year1?:number,VED_Year2?:number,FirstRegFee?:number,OTR_Value?:number,OTR?:number,Prices?:Price[],ProductionDate?:string,PortArrivalDate?:string,Location?:string,IsDisplayStock?:boolean,DisplayRetailerId?:number,DisplayRetailer?:string,DisplayRetailerGssnId?:string,DisplayRetailerMarketAreaId?:number,IsSmartDisplayRetailer?:boolean,ColourDescription?:string,Creation?:string,Modified?:string,VATQualifyingNumber?:number,VATQualifying?:boolean,CurrentRetailerOfferPrice?:number,GssnId?:string,NoImage?:boolean,RegistrationNumber?:string,RegistrationDate?:string,Mileage?:number,TradeInDate?:string,VID?:string,EmissionCombined?:string,EmissionDirective?:string,NormalisedEmissionDirective?:string,HasMildHybridEquipmentCode?:boolean,Acceleration?:number,ChassisNumber?:string,NumberOfDoors?:string,NumberOfSeats?:string,SpecialInfo?:boolean,EligibleForIntegratedServiceCare?:boolean,ConsumptionCombined?:Consumption,ConsumptionExtraUrban?:Consumption,ConsumptionUrban?:Consumption,WltpFuelConsumptionCombined?:Consumption,WltpFuelConsumptionExtraHigh?:Consumption,WltpFuelConsumptionHigh?:Consumption,WltpFuelConsumptionLow?:Consumption,WltpFuelConsumptionMedium?:Consumption,EnergyEfficiencyClass?:EmissionClass,Equipment?:Equipmentv2[],EquipmentAdditional?:Equipment[],EquipmentCategories?:EquipmentCategoryv2[],VehicleData?:VehicleAttribute[],IntegratedServiceCareOptions?:IntegratedServiceCareOptions[],IspVehicleCustomerDescriptions?:string[],MarketingCode?:string,EligibleForMaTransfer?:boolean,ConfirmedProductionDate?:string,ForecastedArrivalDate?:string}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {Package[]} */
    Packages;
    /** @type {string} */
    PackageNames;
}
export class CarConfiguratorVehicle extends BackOrderVehicleDetailsWithPackages {
    /** @param {{ModelYearCode?:string,HalfModelYearCode?:string,ActiveOffers?:number[],EligibleForMotability?:boolean,NearestPort?:boolean,Packages?:Package[],PackageNames?:string,Vin?:string,CommissionNumber?:string,Description?:string,ShortDescription?:string,ModelId?:number,Model?:string,FullModelYearCode?:string,BrandId?:number,Brand?:BackOrderVehicleDetailsBrand,RetailerId?:number,ImageUrl?:string,Colour?:string,ColourCode?:string,FuelType?:string,FuelTypeId?:number,Transmission?:string,TransmissionType?:string,Engine?:Engine,EngineBadge?:string,Package?:string,Line?:string,Upholstery?:string,UpholsteryCode?:string,UsageCode?:string,Account?:string,AccountType?:string,NST?:string,Baumuster?:string,ElectricRange?:number,ElectricConsumption?:number,ActualPrice?:number,OTRPrice?:number,RetailPriceExVat?:number,P11D?:number,VehicleType?:string,UpholsteryDescription?:string,UpholsteryType?:string,BodyStyle?:string,BodyStyleStyleCode?:string,BodyStyleStyleCodeElectric?:string,BodyStyleStyleCodeHybrid?:string,AvailablePackages?:string[],Mapped_Line?:number,Secured?:boolean,Bm7NST?:string,IsAvailableOnline?:boolean,IsSpecialistCar?:boolean,IsSellable?:boolean,UnderOffer?:boolean,VehicleAuditDetails?:VehicleAuditDetails[],Retailer?:Retailer,Media?:Media,Emission?:number,ColourGroup?:string,VehicleClass?:string,ProductRange?:string,IsHOBackOrderAccountVehicle?:boolean,IsAllocatedToBackOrder?:boolean,InBackOrderAccount?:boolean,DeliveryCharge?:number,DeliveryChargeNet?:number,DeliveryChargeVAT?:number,Plates?:number,PlatesNet?:number,PlatesVAT?:number,FuelCharge?:number,FuelChargeNet?:number,FuelChargeVAT?:number,RetailPrice_ExVAT?:number,RetailPrice_IncVAT?:number,VED_Year1?:number,VED_Year2?:number,FirstRegFee?:number,OTR_Value?:number,OTR?:number,Prices?:Price[],ProductionDate?:string,PortArrivalDate?:string,Location?:string,IsDisplayStock?:boolean,DisplayRetailerId?:number,DisplayRetailer?:string,DisplayRetailerGssnId?:string,DisplayRetailerMarketAreaId?:number,IsSmartDisplayRetailer?:boolean,ColourDescription?:string,Creation?:string,Modified?:string,VATQualifyingNumber?:number,VATQualifying?:boolean,CurrentRetailerOfferPrice?:number,GssnId?:string,NoImage?:boolean,RegistrationNumber?:string,RegistrationDate?:string,Mileage?:number,TradeInDate?:string,VID?:string,EmissionCombined?:string,EmissionDirective?:string,NormalisedEmissionDirective?:string,HasMildHybridEquipmentCode?:boolean,Acceleration?:number,ChassisNumber?:string,NumberOfDoors?:string,NumberOfSeats?:string,SpecialInfo?:boolean,EligibleForIntegratedServiceCare?:boolean,ConsumptionCombined?:Consumption,ConsumptionExtraUrban?:Consumption,ConsumptionUrban?:Consumption,WltpFuelConsumptionCombined?:Consumption,WltpFuelConsumptionExtraHigh?:Consumption,WltpFuelConsumptionHigh?:Consumption,WltpFuelConsumptionLow?:Consumption,WltpFuelConsumptionMedium?:Consumption,EnergyEfficiencyClass?:EmissionClass,Equipment?:Equipmentv2[],EquipmentAdditional?:Equipment[],EquipmentCategories?:EquipmentCategoryv2[],VehicleData?:VehicleAttribute[],IntegratedServiceCareOptions?:IntegratedServiceCareOptions[],IspVehicleCustomerDescriptions?:string[],MarketingCode?:string,EligibleForMaTransfer?:boolean,ConfirmedProductionDate?:string,ForecastedArrivalDate?:string}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {?string} */
    ModelYearCode;
    /** @type {?string} */
    HalfModelYearCode;
    /** @type {number[]} */
    ActiveOffers = [];
    /** @type {boolean} */
    EligibleForMotability;
    /** @type {?boolean} */
    NearestPort;
}
export class CarConfiguratorStockMatch {
    /** @param {{Vehicle?:CarConfiguratorVehicle,IsSellable?:boolean,VehicleWheels?:string,VehicleTrim?:string,VehicleAdditionalOptionCodes?:string[],FullModelYearDifferences?:string[],PaintDifferences?:string[],UpholsteryDifferences?:string[],WheelDifferences?:string[],TrimDifferences?:string[],EquipmentDifferences?:string[],Differences?:string[],ExactMatch?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {CarConfiguratorVehicle} */
    Vehicle;
    /** @type {boolean} */
    IsSellable;
    /** @type {?string} */
    VehicleWheels;
    /** @type {?string} */
    VehicleTrim;
    /** @type {string[]} */
    VehicleAdditionalOptionCodes = [];
    /** @type {string[]} */
    FullModelYearDifferences = [];
    /** @type {string[]} */
    PaintDifferences = [];
    /** @type {string[]} */
    UpholsteryDifferences = [];
    /** @type {string[]} */
    WheelDifferences = [];
    /** @type {string[]} */
    TrimDifferences = [];
    /** @type {string[]} */
    EquipmentDifferences = [];
    /** @type {string[]} */
    Differences = [];
    /** @type {boolean} */
    ExactMatch;
}
export class CarConfiguratorStockMatches {
    /** @param {{SellableMatches?:CarConfiguratorStockMatch[],NonSellableMatches?:CarConfiguratorStockMatch[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {CarConfiguratorStockMatch[]} */
    SellableMatches = [];
    /** @type {CarConfiguratorStockMatch[]} */
    NonSellableMatches = [];
}
export class CarConfiguratorStockResponse {
    /** @param {{TotalVehicles?:number,CarConfiguratorResponse?:CarConfiguratorResponse,ExactMatches?:CarConfiguratorStockMatches,CloseMatches?:CarConfiguratorStockMatches}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {number} */
    TotalVehicles;
    /** @type {CarConfiguratorResponse} */
    CarConfiguratorResponse;
    /** @type {CarConfiguratorStockMatches} */
    ExactMatches;
    /** @type {CarConfiguratorStockMatches} */
    CloseMatches;
}
export class CarConfiguratorStockRequest {
    /** @param {{ConfiguratorCode?:string,IsSellable?:boolean,ExactMatch?:boolean,GSSN?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /**
     * @type {string}
     * @description The configurator code to search on */
    ConfiguratorCode;
    /**
     * @type {?boolean}
     * @description Whether to return sellable vehicles */
    IsSellable;
    /**
     * @type {boolean}
     * @description Whether to only get exact matches */
    ExactMatch;
    /**
     * @type {?string}
     * @description Whether to restrict vehicles response to a GSSN */
    GSSN;
}

JavaScript CarConfiguratorStockRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/CarConfiguratorStock HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	ConfiguratorCode: String,
	IsSellable: False,
	ExactMatch: False,
	GSSN: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	TotalVehicles: 4,
	CarConfiguratorResponse: 
	{
		Name: String,
		KeyInformation: 
		{
			BM7NST: String,
			ConfigurationDate: String,
			ModelYear: String,
			HalfYear: String
		},
		OrderingOptions: 
		{
			Interior: 
			[
				String
			],
			Exterior: 
			[
				String
			],
			Options: 
			[
				String
			],
			WheelOptions: 
			[
				{
					Code: String,
					Description: String,
					StandardFlag: String,
					Price: 0,
					Category: String,
					Importance: String
				}
			],
			TrimOptions: 
			[
				{
					Code: String,
					Description: String,
					StandardFlag: String,
					Price: 0,
					Category: String,
					Importance: String
				}
			],
			OptionCodes: 
			[
				{
					Code: String,
					Description: String,
					StandardFlag: String,
					Price: 0,
					Category: String,
					Importance: String
				}
			]
		},
		ResponseStatus: 
		{
			ErrorCode: String,
			Message: String,
			StackTrace: String,
			Errors: 
			[
				{
					ErrorCode: String,
					FieldName: String,
					Message: String,
					Meta: 
					{
						String: String
					}
				}
			],
			Meta: 
			{
				String: String
			}
		},
		ConfiguratorCode: String
	},
	ExactMatches: 
	{
		SellableMatches: 
		[
			{
				
			}
		],
		NonSellableMatches: 
		[
			{
				
			}
		]
	},
	CloseMatches: 
	{
		SellableMatches: 
		[
			{
				
			}
		],
		NonSellableMatches: 
		[
			{
				
			}
		]
	}
}