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
[<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: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: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>