| 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 .xml suffix or ?format=xml
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: application/xml
Content-Type: application/xml
Content-Length: length
<OnlineShowroomStockRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.ServiceModel">
<Gssns xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</Gssns>
</OnlineShowroomStockRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<OnlineShowroomStockResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.ServiceModel">
<TotalVehicles>0</TotalVehicles>
<Vehicles xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.Shared.POCO.V3">
<d2p1:StockDataRow>
<d2p1:Acceleration>0</d2p1:Acceleration>
<d2p1:Account>String</d2p1:Account>
<d2p1:ActualPrice>0</d2p1:ActualPrice>
<d2p1:Bm7NST>String</d2p1:Bm7NST>
<d2p1:BodyStyle>String</d2p1:BodyStyle>
<d2p1:BootCapacity>0</d2p1:BootCapacity>
<d2p1:CesarIdShipToParty>String</d2p1:CesarIdShipToParty>
<d2p1:ChassisNumber>String</d2p1:ChassisNumber>
<d2p1:Colour>String</d2p1:Colour>
<d2p1:ColourGroup>String</d2p1:ColourGroup>
<d2p1:CombinedGrossOfferValue>0</d2p1:CombinedGrossOfferValue>
<d2p1:CombinedPowerHP>0</d2p1:CombinedPowerHP>
<d2p1:CombinedPowerKw>0</d2p1:CombinedPowerKw>
<d2p1:CombustionPowerHp>0</d2p1:CombustionPowerHp>
<d2p1:CommissionNumber>String</d2p1:CommissionNumber>
<d2p1:ConfirmedProductionDate>0001-01-01T00:00:00</d2p1:ConfirmedProductionDate>
<d2p1:CreationDate>0001-01-01T00:00:00</d2p1:CreationDate>
<d2p1:CurrentLocation>String</d2p1:CurrentLocation>
<d2p1:Description>String</d2p1:Description>
<d2p1:DiscretionaryMOCount>0</d2p1:DiscretionaryMOCount>
<d2p1:DiscretionaryMoneyOffer>0</d2p1:DiscretionaryMoneyOffer>
<d2p1:DiscretionaryNMOCount>0</d2p1:DiscretionaryNMOCount>
<d2p1:DisplayStockAgent>String</d2p1:DisplayStockAgent>
<d2p1:DriveConcept>String</d2p1:DriveConcept>
<d2p1:Duplicate>false</d2p1:Duplicate>
<d2p1:DuplicateGroup>0</d2p1:DuplicateGroup>
<d2p1:ElectricConsumption>0</d2p1:ElectricConsumption>
<d2p1:ElectricPowerHp>0</d2p1:ElectricPowerHp>
<d2p1:ElectricPowerKw>0</d2p1:ElectricPowerKw>
<d2p1:ElectricRange>0</d2p1:ElectricRange>
<d2p1:Emission>0</d2p1:Emission>
<d2p1:EmissionCombined>String</d2p1:EmissionCombined>
<d2p1:EmissionDirective>String</d2p1:EmissionDirective>
<d2p1:EmissionExtraUrban>String</d2p1:EmissionExtraUrban>
<d2p1:EmissionUrban>String</d2p1:EmissionUrban>
<d2p1:EnergyEfficiencyClass>String</d2p1:EnergyEfficiencyClass>
<d2p1:Engine>String</d2p1:Engine>
<d2p1:Fin>String</d2p1:Fin>
<d2p1:ForecastedArrivalDate>0001-01-01T00:00:00</d2p1:ForecastedArrivalDate>
<d2p1:FuelType>String</d2p1:FuelType>
<d2p1:FullModelYearCode>String</d2p1:FullModelYearCode>
<d2p1:HalfModelYearCode>String</d2p1:HalfModelYearCode>
<d2p1:IncludedAfterDeduplication>false</d2p1:IncludedAfterDeduplication>
<d2p1:IsAMG>false</d2p1:IsAMG>
<d2p1:IsDisplayStock>false</d2p1:IsDisplayStock>
<d2p1:IsSellable>false</d2p1:IsSellable>
<d2p1:IsSpecialistCar>false</d2p1:IsSpecialistCar>
<d2p1:LastUpdated>0001-01-01T00:00:00</d2p1:LastUpdated>
<d2p1:Lines>String</d2p1:Lines>
<d2p1:Location>String</d2p1:Location>
<d2p1:LowestComm>false</d2p1:LowestComm>
<d2p1:MBUKSecured>false</d2p1:MBUKSecured>
<d2p1:Model>String</d2p1:Model>
<d2p1:ModelYear>String</d2p1:ModelYear>
<d2p1:ModelYearCode>String</d2p1:ModelYearCode>
<d2p1:NST>String</d2p1:NST>
<d2p1:NonDiscretionaryMOCount>0</d2p1:NonDiscretionaryMOCount>
<d2p1:NonDiscretionaryNMOCount>0</d2p1:NonDiscretionaryNMOCount>
<d2p1:NotVisibleOnlineShowroom>false</d2p1:NotVisibleOnlineShowroom>
<d2p1:NvosReason>String</d2p1:NvosReason>
<d2p1:NvosReasonLinkedToBackOrder>false</d2p1:NvosReasonLinkedToBackOrder>
<d2p1:NvosReasonOneAdminExcluded>false</d2p1:NvosReasonOneAdminExcluded>
<d2p1:OTR>0</d2p1:OTR>
<d2p1:Packages>String</d2p1:Packages>
<d2p1:PortArrivalDate>0001-01-01T00:00:00</d2p1:PortArrivalDate>
<d2p1:ProductRange>String</d2p1:ProductRange>
<d2p1:ProductionDate>0001-01-01T00:00:00</d2p1:ProductionDate>
<d2p1:RetailPrice_ExVAT>0</d2p1:RetailPrice_ExVAT>
<d2p1:RetailPrice_IncVAT>0</d2p1:RetailPrice_IncVAT>
<d2p1:Rule>String</d2p1:Rule>
<d2p1:SalesDescriptionLong>String</d2p1:SalesDescriptionLong>
<d2p1:StockLevelIndicator>String</d2p1:StockLevelIndicator>
<d2p1:TopSpeed>0</d2p1:TopSpeed>
<d2p1:TotalMoneyOffersExclDiscretionary>0</d2p1:TotalMoneyOffersExclDiscretionary>
<d2p1:TotalMoneyOffersInclDiscretionary>0</d2p1:TotalMoneyOffersInclDiscretionary>
<d2p1:TotalOfferVIPAmount>0</d2p1:TotalOfferVIPAmount>
<d2p1:Transmission>String</d2p1:Transmission>
<d2p1:TransmissionType>String</d2p1:TransmissionType>
<d2p1:UnderOffer>false</d2p1:UnderOffer>
<d2p1:Unique>false</d2p1:Unique>
<d2p1:Upholstery>String</d2p1:Upholstery>
<d2p1:UpholsteryCode>String</d2p1:UpholsteryCode>
<d2p1:VehicleClass>String</d2p1:VehicleClass>
<d2p1:VehicleType>String</d2p1:VehicleType>
<d2p1:VehicleUsageCode>String</d2p1:VehicleUsageCode>
<d2p1:Vid>String</d2p1:Vid>
<d2p1:Vin>String</d2p1:Vin>
<d2p1:WLTPCombined>String</d2p1:WLTPCombined>
<d2p1:WLTPEmissionCombined>String</d2p1:WLTPEmissionCombined>
<d2p1:WLTPExtraHigh>String</d2p1:WLTPExtraHigh>
<d2p1:WLTPHigh>String</d2p1:WLTPHigh>
<d2p1:WLTPLow>String</d2p1:WLTPLow>
<d2p1:WLTPMedium>String</d2p1:WLTPMedium>
</d2p1:StockDataRow>
</Vehicles>
</OnlineShowroomStockResponse>