| POST | /v1/vehicle | Get Vehicle by Vin | Get Vehicle by Vin |
|---|
namespace Mercedes.Agency.API.Shared.Enums
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type GetVehicleRequest() =
member val Vin:String = null with get,set
member val IncludeAllocatedToOrder:Boolean = new Boolean() with get,set
member val Gssn:String = null with get,set
member val IsOneAdmin:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type Model() =
member val Id:Int32 = new Int32() with get,set
member val Description:String = null with get,set
member val DisplayName:String = null with get,set
member val ImageUrlSmall:String = null with get,set
member val ImageUrlMedium:String = null with get,set
member val ImageUrlLarge:String = null with get,set
member val Specialist:Boolean = new Boolean() with get,set
member val Priority:Nullable<Int32> = new Nullable<Int32>() with get,set
member val ExcludeFromOnlineShowroomFilters:Nullable<Boolean> = new Nullable<Boolean>() with get,set
[<AllowNullLiteral>]
type BodyStyle() =
member val Id:Int32 = new Int32() with get,set
member val Description:String = null with get,set
member val Models:ResizeArray<Model> = null with get,set
[<AllowNullLiteral>]
type Brand() =
member val Id:Int32 = new Int32() with get,set
member val Description:String = null with get,set
member val DisplayName:String = null with get,set
member val BodyStyles:ResizeArray<BodyStyle> = null with get,set
[<AllowNullLiteral>]
type Engine() =
member val Id:Nullable<Int32> = new Nullable<Int32>() with get,set
member val Badge:String = null with get,set
[<AllowNullLiteral>]
type Media() =
member val NoImage:Boolean = new Boolean() with get,set
member val MainImageUrl:String = null with get,set
type OfferPriceProductType =
| LIST_PRICE = 0
| NUMBER_PLATE_FEE = 1
| DELIVERY_CHARGE = 2
| FUEL_CHARGE = 3
| MANUFACTURER_OFFER = 4
| PERSONALISED_MONEYOFFER = 5
| PERSONALISED_NONMONEYOFFER = 6
| PERSONALISED_NONMONEYOFFER_NEG = 7
| SERVICE = 8
| SERVICE_NEG = 9
| GOVERNMENT_GRANT = 10
| OUTRIGHT_PURCHASE_DISCOUNT = 11
| VIP_OFFER = 12
| WALLBOX_OFFER = 13
| WALLBOX_OFFER_NEG = 14
| ROAD_FUND_LICENCE = 15
| FIRST_REGISTRATION_FEE = 16
| NOT_FOUND = 17
| ACCESSORY_OFFER = 18
| ACCESSORY_OFFER_NEG = 19
| MOTABILITY_DISCOUNT = 20
[<AllowNullLiteral>]
type Price() =
member val Id:String = null with get,set
member val Description:String = null with get,set
member val Net:Decimal = new Decimal() with get,set
member val VAT:Decimal = new Decimal() with get,set
member val Gross:Decimal = new Decimal() with get,set
member val Product:OfferPriceProductType = new OfferPriceProductType() with get,set
[<AllowNullLiteral>]
type RetailerOpeningTime() =
member val Day:String = null with get,set
member val OpenFrom:String = null with get,set
member val OpenTo:String = null with get,set
member val Special:String = null with get,set
[<AllowNullLiteral>]
type RetailerOpeningTimes() =
member val New:ResizeArray<RetailerOpeningTime> = null with get,set
member val Used:ResizeArray<RetailerOpeningTime> = null with get,set
[<AllowNullLiteral>]
type Retailer() =
member val Id:Int32 = new Int32() with get,set
member val GssnId:String = null with get,set
member val Description:String = null with get,set
member val Street:String = null with get,set
member val City:String = null with get,set
member val Postcode:String = null with get,set
member val GoogleMapPostcode:String = null with get,set
member val Phone:String = null with get,set
member val Fax:String = null with get,set
member val Email:String = null with get,set
member val Website:String = null with get,set
member val RetailerGroupId:String = null with get,set
member val RetailerGroupName:String = null with get,set
member val IsOnline:Boolean = new Boolean() with get,set
member val IsNewCarRetailer:Boolean = new Boolean() with get,set
member val IsUsedCarRetailer:Boolean = new Boolean() with get,set
member val IsCentralRetailer:Boolean = new Boolean() with get,set
member val ChatEnabled:Boolean = new Boolean() with get,set
member val TradeInEnabled:Boolean = new Boolean() with get,set
member val smart:Boolean = new Boolean() with get,set
member val DisplayPhoneNumberNew:String = null with get,set
member val DisplayPhoneNumberUsed:String = null with get,set
member val Latitude:Decimal = new Decimal() with get,set
member val Longitude:Decimal = new Decimal() with get,set
member val smartDescription:String = null with get,set
member val smartWebsite:String = null with get,set
member val smartPhone:String = null with get,set
member val LegacyId:String = null with get,set
member val Agent:Boolean = new Boolean() with get,set
member val MarketAreaId:Int32 = new Int32() with get,set
member val DigitalLoungeParentGssnId:String = null with get,set
member val SendLeadsToDigitalLoungeParent:Boolean = new Boolean() with get,set
member val OpeningTimes:RetailerOpeningTimes = null with get,set
[<AllowNullLiteral>]
type VehicleConsumption() =
member val Id:Int32 = new Int32() with get,set
member val Lkm:Decimal = new Decimal() with get,set
member val Mpg:Decimal = new Decimal() with get,set
[<AllowNullLiteral>]
type Equipment() =
member val Id:Nullable<Int32> = new Nullable<Int32>() with get,set
member val Code:String = null with get,set
member val Description:String = null with get,set
[<AllowNullLiteral>]
type Equipmentv2() =
inherit Equipment()
member val Importance:Int32 = new Int32() with get,set
member val IsAdditional:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type VehicleEquipmentCategory() =
member val Order:Int32 = new Int32() with get,set
member val Code:String = null with get,set
member val Description:String = null with get,set
member val Equipment:ResizeArray<Equipmentv2> = null with get,set
[<AllowNullLiteral>]
type VehicleEmissionClass() =
member val Colour:String = null with get,set
member val Rating:String = null with get,set
[<AllowNullLiteral>]
type VehicleAttribute() =
member val Description:String = null with get,set
member val Value:String = null with get,set
[<AllowNullLiteral>]
type VehicleIntegratedServiceCareOption() =
member val OptionCode:String = null with get,set
member val BM7NST:String = null with get,set
member val FullModelYear:String = null with get,set
member val IntegratedProductType:String = null with get,set
member val CustomerDescription:String = null with get,set
member val OneAgentProductType:String = null with get,set
[<AllowNullLiteral>]
type VehicleDetailDto() =
member val BodyStyle:String = null with get,set
member val Vin:String = null with get,set
member val Description:String = null with get,set
member val Colour:String = null with get,set
member val ColourCode:String = null with get,set
member val ColourDescription:String = null with get,set
member val ColourGroup:String = null with get,set
member val Model:String = null with get,set
member val CommissionNumber:String = null with get,set
member val BrandId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val Brand:Brand = null with get,set
member val Engine:Engine = null with get,set
member val EngineBadge:String = null with get,set
member val Media:Media = null with get,set
member val Line:String = null with get,set
member val UpholsteryCode:String = null with get,set
member val UpholsteryType:String = null with get,set
member val Upholstery:String = null with get,set
member val UpholsteryDescription:String = null with get,set
member val AvailablePackages:ResizeArray<String> = null with get,set
member val Packages:ResizeArray<String> = null with get,set
member val P11D:Decimal = new Decimal() with get,set
member val PortArrivalDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val Prices:ResizeArray<Price> = null with get,set
member val TransmissionType:String = null with get,set
member val FuelType:String = null with get,set
member val VehicleClass:String = null with get,set
member val ProductRange:String = null with get,set
member val VehicleType:String = null with get,set
member val Emission:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val IsAvailableOnline:Boolean = new Boolean() with get,set
member val UnderOffer:Boolean = new Boolean() with get,set
member val IsExcluded:Boolean = new Boolean() with get,set
member val IsSellable:Boolean = new Boolean() with get,set
member val OnHold:Boolean = new Boolean() with get,set
member val ElectricConsumption:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val ElectricRange:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val ImageUrl:String = null with get,set
member val Baumuster:String = null with get,set
member val Retailer:Retailer = null with get,set
member val Bm7NST:String = null with get,set
member val OTR:Decimal = new Decimal() with get,set
member val ActualPrice:Decimal = new Decimal() with get,set
member val IsDisplayStock:Boolean = new Boolean() with get,set
member val DisplayRetailerId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val DisplayRetailer:String = null with get,set
member val DisplayRetailerGssnId:String = null with get,set
member val DisplayRetailerMarketAreaId:String = null with get,set
member val IsSmartDisplayRetailer:Boolean = new Boolean() with get,set
member val IsSpecialistCar:Boolean = new Boolean() with get,set
member val Age:Nullable<Int32> = new Nullable<Int32>() with get,set
member val Secured:Boolean = new Boolean() with get,set
member val IsHOBackOrderAccountVehicle:Boolean = new Boolean() with get,set
member val IsAllocatedToBackOrder:Boolean = new Boolean() with get,set
member val UsageCode:String = null with get,set
member val EmissionCombined:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val NormalisedEmissionDirective:String = null with get,set
member val HasMildHybridEquipmentCode:Boolean = new Boolean() with get,set
member val RetailPriceExVat:Decimal = new Decimal() with get,set
member val RetailPrice_IncVAT:Decimal = new Decimal() with get,set
member val RetailPrice_ExVAT:Decimal = new Decimal() with get,set
member val ModelId:Int32 = new Int32() with get,set
member val VID:String = null with get,set
member val ProductionDate:String = null with get,set
member val FullModelYearCode:String = null with get,set
member val ChassisNumber:String = null with get,set
member val EligibleForIntegratedServiceCare:Boolean = new Boolean() with get,set
member val AccountType:String = null with get,set
member val ConsumptionCombined:VehicleConsumption = null with get,set
member val ConsumptionExtraUrban:VehicleConsumption = null with get,set
member val ConsumptionUrban:VehicleConsumption = null with get,set
member val WltpFuelConsumptionCombined:VehicleConsumption = null with get,set
member val WltpFuelConsumptionExtraHigh:VehicleConsumption = null with get,set
member val WltpFuelConsumptionHigh:VehicleConsumption = null with get,set
member val WltpFuelConsumptionLow:VehicleConsumption = null with get,set
member val WltpFuelConsumptionMedium:VehicleConsumption = null with get,set
member val Equipment:ResizeArray<Equipmentv2> = null with get,set
member val EquipmentCategories:ResizeArray<VehicleEquipmentCategory> = null with get,set
member val EnergyEfficiencyClass:VehicleEmissionClass = null with get,set
member val VehicleData:ResizeArray<VehicleAttribute> = null with get,set
member val IntegratedServiceCareOptions:ResizeArray<VehicleIntegratedServiceCareOption> = null with get,set
member val IspVehicleCustomerDescriptions:ResizeArray<String> = null with get,set
member val ConfirmedProductionDate:String = null with get,set
member val ForecastedArrivalDate:String = null with get,set
[<AllowNullLiteral>]
type VehicleError() =
member val Field:String = null with get,set
member val Message:String = null with get,set
[<AllowNullLiteral>]
type GetVehicleResponse() =
member val Vehicle:VehicleDetailDto = null with get,set
member val Errors:ResizeArray<VehicleError> = null with get,set
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/vehicle HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetVehicleRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.ServiceModel.Vehicles">
<Gssn>String</Gssn>
<IncludeAllocatedToOrder>false</IncludeAllocatedToOrder>
<IsOneAdmin>false</IsOneAdmin>
<Vin>String</Vin>
</GetVehicleRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<GetVehicleResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO">
<Errors>
<VehicleError>
<Field>String</Field>
<Message>String</Message>
</VehicleError>
</Errors>
<Vehicle>
<AccountType>String</AccountType>
<ActualPrice>0</ActualPrice>
<Age>0</Age>
<AvailablePackages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:string>String</d3p1:string>
</AvailablePackages>
<Baumuster>String</Baumuster>
<Bm7NST>String</Bm7NST>
<BodyStyle>String</BodyStyle>
<Brand xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO.Filters.v2">
<d3p1:BodyStyles>
<d3p1:BodyStyle>
<d3p1:Description>String</d3p1:Description>
<d3p1:Id>0</d3p1:Id>
<d3p1:Models>
<d3p1:Model>
<d3p1:Description>String</d3p1:Description>
<d3p1:DisplayName>String</d3p1:DisplayName>
<d3p1:ExcludeFromOnlineShowroomFilters>false</d3p1:ExcludeFromOnlineShowroomFilters>
<d3p1:Id>0</d3p1:Id>
<d3p1:ImageUrlLarge>String</d3p1:ImageUrlLarge>
<d3p1:ImageUrlMedium>String</d3p1:ImageUrlMedium>
<d3p1:ImageUrlSmall>String</d3p1:ImageUrlSmall>
<d3p1:Priority>0</d3p1:Priority>
<d3p1:Specialist>false</d3p1:Specialist>
</d3p1:Model>
</d3p1:Models>
</d3p1:BodyStyle>
</d3p1:BodyStyles>
<d3p1:Description>String</d3p1:Description>
<d3p1:DisplayName>String</d3p1:DisplayName>
<d3p1:Id>0</d3p1:Id>
</Brand>
<BrandId>0</BrandId>
<ChassisNumber>String</ChassisNumber>
<Colour>String</Colour>
<ColourCode>String</ColourCode>
<ColourDescription>String</ColourDescription>
<ColourGroup>String</ColourGroup>
<CommissionNumber>String</CommissionNumber>
<ConfirmedProductionDate>String</ConfirmedProductionDate>
<ConsumptionCombined>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</ConsumptionCombined>
<ConsumptionExtraUrban>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</ConsumptionExtraUrban>
<ConsumptionUrban>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</ConsumptionUrban>
<Description>String</Description>
<DisplayRetailer>String</DisplayRetailer>
<DisplayRetailerGssnId>String</DisplayRetailerGssnId>
<DisplayRetailerId>0</DisplayRetailerId>
<DisplayRetailerMarketAreaId>String</DisplayRetailerMarketAreaId>
<ElectricConsumption>0</ElectricConsumption>
<ElectricRange>0</ElectricRange>
<EligibleForIntegratedServiceCare>false</EligibleForIntegratedServiceCare>
<Emission>0</Emission>
<EmissionCombined>0</EmissionCombined>
<EnergyEfficiencyClass>
<Colour>String</Colour>
<Rating>String</Rating>
</EnergyEfficiencyClass>
<Engine>
<Badge>String</Badge>
<Id>0</Id>
</Engine>
<Equipment xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
<d3p1:Equipmentv2>
<d3p1:Code>String</d3p1:Code>
<d3p1:Description>String</d3p1:Description>
<d3p1:Id>0</d3p1:Id>
<d3p1:Importance>0</d3p1:Importance>
<d3p1:IsAdditional>false</d3p1:IsAdditional>
</d3p1:Equipmentv2>
</Equipment>
<EquipmentCategories>
<VehicleEquipmentCategory>
<Code>String</Code>
<Description>String</Description>
<Equipment xmlns:d5p1="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
<d5p1:Equipmentv2>
<d5p1:Code>String</d5p1:Code>
<d5p1:Description>String</d5p1:Description>
<d5p1:Id>0</d5p1:Id>
<d5p1:Importance>0</d5p1:Importance>
<d5p1:IsAdditional>false</d5p1:IsAdditional>
</d5p1:Equipmentv2>
</Equipment>
<Order>0</Order>
</VehicleEquipmentCategory>
</EquipmentCategories>
<ForecastedArrivalDate>String</ForecastedArrivalDate>
<FuelType>String</FuelType>
<FullModelYearCode>String</FullModelYearCode>
<HasMildHybridEquipmentCode>false</HasMildHybridEquipmentCode>
<IntegratedServiceCareOptions>
<VehicleIntegratedServiceCareOption>
<BM7NST>String</BM7NST>
<CustomerDescription>String</CustomerDescription>
<FullModelYear>String</FullModelYear>
<IntegratedProductType>String</IntegratedProductType>
<OneAgentProductType>String</OneAgentProductType>
<OptionCode>String</OptionCode>
</VehicleIntegratedServiceCareOption>
</IntegratedServiceCareOptions>
<IsAllocatedToBackOrder>false</IsAllocatedToBackOrder>
<IsAvailableOnline>false</IsAvailableOnline>
<IsDisplayStock>false</IsDisplayStock>
<IsExcluded>false</IsExcluded>
<IsHOBackOrderAccountVehicle>false</IsHOBackOrderAccountVehicle>
<IsSellable>false</IsSellable>
<IsSmartDisplayRetailer>false</IsSmartDisplayRetailer>
<IsSpecialistCar>false</IsSpecialistCar>
<IspVehicleCustomerDescriptions xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:string>String</d3p1:string>
</IspVehicleCustomerDescriptions>
<Line>String</Line>
<Media>
<MainImageUrl>String</MainImageUrl>
<NoImage>false</NoImage>
</Media>
<Model>String</Model>
<ModelId>0</ModelId>
<NormalisedEmissionDirective>String</NormalisedEmissionDirective>
<OTR>0</OTR>
<OnHold>false</OnHold>
<P11D>0</P11D>
<Packages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:string>String</d3p1:string>
</Packages>
<PortArrivalDate>0001-01-01T00:00:00</PortArrivalDate>
<Prices>
<Price>
<Description>String</Description>
<Gross>0</Gross>
<Id>String</Id>
<Net>0</Net>
<Product>LIST_PRICE</Product>
<VAT>0</VAT>
</Price>
</Prices>
<ProductRange>String</ProductRange>
<ProductionDate>String</ProductionDate>
<RetailPriceExVat>0</RetailPriceExVat>
<RetailPrice_ExVAT>0</RetailPrice_ExVAT>
<RetailPrice_IncVAT>0</RetailPrice_IncVAT>
<Retailer>
<Agent>false</Agent>
<ChatEnabled>false</ChatEnabled>
<City>String</City>
<Description>String</Description>
<DigitalLoungeParentGssnId>String</DigitalLoungeParentGssnId>
<DisplayPhoneNumberNew>String</DisplayPhoneNumberNew>
<DisplayPhoneNumberUsed>String</DisplayPhoneNumberUsed>
<Email>String</Email>
<Fax>String</Fax>
<GoogleMapPostcode>String</GoogleMapPostcode>
<GssnId>String</GssnId>
<Id>0</Id>
<IsCentralRetailer>false</IsCentralRetailer>
<IsNewCarRetailer>false</IsNewCarRetailer>
<IsOnline>false</IsOnline>
<IsUsedCarRetailer>false</IsUsedCarRetailer>
<Latitude>0</Latitude>
<LegacyId>String</LegacyId>
<Longitude>0</Longitude>
<MarketAreaId>0</MarketAreaId>
<OpeningTimes>
<New>
<RetailerOpeningTime>
<Day>String</Day>
<OpenFrom>String</OpenFrom>
<OpenTo>String</OpenTo>
<Special>String</Special>
</RetailerOpeningTime>
</New>
<Used>
<RetailerOpeningTime>
<Day>String</Day>
<OpenFrom>String</OpenFrom>
<OpenTo>String</OpenTo>
<Special>String</Special>
</RetailerOpeningTime>
</Used>
</OpeningTimes>
<Phone>String</Phone>
<Postcode>String</Postcode>
<RetailerGroupId>String</RetailerGroupId>
<RetailerGroupName>String</RetailerGroupName>
<SendLeadsToDigitalLoungeParent>false</SendLeadsToDigitalLoungeParent>
<Street>String</Street>
<TradeInEnabled>false</TradeInEnabled>
<Website>String</Website>
<smart>false</smart>
<smartDescription>String</smartDescription>
<smartPhone>String</smartPhone>
<smartWebsite>String</smartWebsite>
</Retailer>
<Secured>false</Secured>
<TransmissionType>String</TransmissionType>
<UnderOffer>false</UnderOffer>
<UpholsteryCode>String</UpholsteryCode>
<UpholsteryDescription>String</UpholsteryDescription>
<UpholsteryType>String</UpholsteryType>
<UsageCode>String</UsageCode>
<VID>String</VID>
<VehicleClass>String</VehicleClass>
<VehicleData>
<VehicleAttribute>
<Description>String</Description>
<Value>String</Value>
</VehicleAttribute>
</VehicleData>
<VehicleType>String</VehicleType>
<Vin>String</Vin>
<WltpFuelConsumptionCombined>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</WltpFuelConsumptionCombined>
<WltpFuelConsumptionExtraHigh>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</WltpFuelConsumptionExtraHigh>
<WltpFuelConsumptionHigh>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</WltpFuelConsumptionHigh>
<WltpFuelConsumptionLow>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</WltpFuelConsumptionLow>
<WltpFuelConsumptionMedium>
<Id>0</Id>
<Lkm>0</Lkm>
<Mpg>0</Mpg>
</WltpFuelConsumptionMedium>
</Vehicle>
</GetVehicleResponse>