| 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 |
|---|
namespace Mercedes.VehicleManagement.API.ServiceModel
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type StockDataRow() =
member val CommissionNumber:String = null with get,set
member val Description:String = null with get,set
member val SalesDescriptionLong:String = null with get,set
member val Model:String = null with get,set
member val Colour:String = null with get,set
member val ColourGroup:String = null with get,set
member val FuelType:String = null with get,set
member val Transmission:String = null with get,set
member val TransmissionType:String = null with get,set
member val Packages:String = null with get,set
member val Lines:String = null with get,set
member val Upholstery:String = null with get,set
member val UpholsteryCode:String = null with get,set
member val DisplayStockAgent:String = null with get,set
member val Location:String = null with get,set
member val Vin:String = null with get,set
member val Vid:String = null with get,set
member val VehicleType:String = null with get,set
member val VehicleClass:String = null with get,set
member val CreationDate:DateTime = new DateTime() with get,set
member val LastUpdated:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ProductionDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val PortArrivalDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val CombinedGrossOfferValue:Decimal = new Decimal() with get,set
member val CurrentLocation:String = null with get,set
member val NotVisibleOnlineShowroom:Boolean = new Boolean() with get,set
member val NvosReason:String = null with get,set
member val NvosReasonOneAdminExcluded:Boolean = new Boolean() with get,set
member val NvosReasonLinkedToBackOrder:Boolean = new Boolean() with get,set
member val IncludedAfterDeduplication:Boolean = new Boolean() with get,set
member val Unique:Boolean = new Boolean() with get,set
member val Duplicate:Boolean = new Boolean() with get,set
member val DuplicateGroup:Nullable<Int32> = new Nullable<Int32>() with get,set
member val LowestComm:Boolean = new Boolean() with get,set
member val Rule:String = null with get,set
member val Fin:String = null with get,set
member val ChassisNumber:String = null with get,set
member val ModelYear:String = null with get,set
member val ModelYearCode:String = null with get,set
member val HalfModelYearCode:String = null with get,set
member val FullModelYearCode:String = null with get,set
member val BodyStyle:String = null with get,set
member val Engine:String = null with get,set
member val CesarIdShipToParty:String = null with get,set
member val VehicleUsageCode:String = null with get,set
member val Acceleration:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val BootCapacity:Nullable<Int32> = new Nullable<Int32>() with get,set
member val TopSpeed:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val DriveConcept:String = null with get,set
member val CombustionPowerHp:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val ElectricPowerKw:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val ElectricPowerHp:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val CombinedPowerKw:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val CombinedPowerHP:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val UnderOffer:Boolean = new Boolean() with get,set
member val IsSellable:Boolean = new Boolean() with get,set
member val MBUKSecured:Boolean = new Boolean() with get,set
member val IsDisplayStock:Boolean = new Boolean() with get,set
member val IsSpecialistCar:Boolean = new Boolean() with get,set
member val Account:String = null with get,set
member val ProductRange:String = null with get,set
member val IsAMG:Boolean = new Boolean() with get,set
member val ActualPrice:Decimal = new Decimal() with get,set
member val RetailPrice_ExVAT:Decimal = new Decimal() with get,set
member val RetailPrice_IncVAT:Decimal = new Decimal() with get,set
member val OTR:Decimal = new Decimal() with get,set
member val NST:String = null with get,set
member val Bm7NST:String = null with get,set
member val ElectricRange:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val ElectricConsumption:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val Emission:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val EmissionDirective:String = null with get,set
member val EmissionCombined:String = null with get,set
member val EmissionExtraUrban:String = null with get,set
member val EmissionUrban:String = null with get,set
member val EnergyEfficiencyClass:String = null with get,set
member val WLTPEmissionCombined:String = null with get,set
member val WLTPCombined:String = null with get,set
member val WLTPLow:String = null with get,set
member val WLTPMedium:String = null with get,set
member val WLTPHigh:String = null with get,set
member val WLTPExtraHigh:String = null with get,set
member val TotalMoneyOffersExclDiscretionary:Decimal = new Decimal() with get,set
member val DiscretionaryMoneyOffer:Decimal = new Decimal() with get,set
member val TotalMoneyOffersInclDiscretionary:Decimal = new Decimal() with get,set
member val NonDiscretionaryNMOCount:Int32 = new Int32() with get,set
member val NonDiscretionaryMOCount:Int32 = new Int32() with get,set
member val DiscretionaryNMOCount:Int32 = new Int32() with get,set
member val DiscretionaryMOCount:Int32 = new Int32() with get,set
member val TotalOfferVIPAmount:Decimal = new Decimal() with get,set
member val StockLevelIndicator:String = null with get,set
member val ConfirmedProductionDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ForecastedArrivalDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
[<AllowNullLiteral>]
type OnlineShowroomStockResponse() =
member val TotalVehicles:Int32 = new Int32() with get,set
member val Vehicles:ResizeArray<StockDataRow> = null with get,set
[<AllowNullLiteral>]
type OnlineShowroomStockRequest() =
interface IPost
member val Gssns:ResizeArray<String> = null with get,set
F# 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,
confirmedProductionDate: 0001-01-01,
forecastedArrivalDate: 0001-01-01
}
]
}