| POST | /v1/vehicle | Get Vehicle by Vin | Get Vehicle by Vin |
|---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Mercedes.Agency.Orchestration.API.ServiceModel.Vehicles;
using Mercedes.Agency.API.Shared.POCO;
using Mercedes.OS.Vehicle.Shared.POCO.Filters.v2;
using Mercedes.Agency.API.Shared.Enums;
using Mercedes.OS.Vehicle.Shared.POCO;
namespace Mercedes.Agency.API.Shared.POCO
{
public partial class Engine
{
public virtual int? Id { get; set; }
public virtual string Badge { get; set; }
}
public partial class GetVehicleResponse
{
public virtual VehicleDetailDto Vehicle { get; set; }
public virtual List<VehicleError> Errors { get; set; }
}
public partial class Media
{
public virtual bool NoImage { get; set; }
public virtual string MainImageUrl { get; set; }
}
public partial class Price
{
public virtual string Id { get; set; }
public virtual string Description { get; set; }
public virtual decimal Net { get; set; }
public virtual decimal VAT { get; set; }
public virtual decimal Gross { get; set; }
public virtual OfferPriceProductType Product { get; set; }
}
public partial class Retailer
{
public virtual int Id { get; set; }
public virtual string GssnId { get; set; }
public virtual string Description { get; set; }
public virtual string Street { get; set; }
public virtual string City { get; set; }
public virtual string Postcode { get; set; }
public virtual string GoogleMapPostcode { get; set; }
public virtual string Phone { get; set; }
public virtual string Fax { get; set; }
public virtual string Email { get; set; }
public virtual string Website { get; set; }
public virtual string RetailerGroupId { get; set; }
public virtual string RetailerGroupName { get; set; }
public virtual bool IsOnline { get; set; }
public virtual bool IsNewCarRetailer { get; set; }
public virtual bool IsUsedCarRetailer { get; set; }
public virtual bool IsCentralRetailer { get; set; }
public virtual bool ChatEnabled { get; set; }
public virtual bool TradeInEnabled { get; set; }
public virtual bool smart { get; set; }
public virtual string DisplayPhoneNumberNew { get; set; }
public virtual string DisplayPhoneNumberUsed { get; set; }
public virtual decimal Latitude { get; set; }
public virtual decimal Longitude { get; set; }
public virtual string smartDescription { get; set; }
public virtual string smartWebsite { get; set; }
public virtual string smartPhone { get; set; }
public virtual string LegacyId { get; set; }
public virtual bool Agent { get; set; }
public virtual int MarketAreaId { get; set; }
public virtual string DigitalLoungeParentGssnId { get; set; }
public virtual bool SendLeadsToDigitalLoungeParent { get; set; }
public virtual RetailerOpeningTimes OpeningTimes { get; set; }
}
public partial class RetailerOpeningTime
{
public virtual string Day { get; set; }
public virtual string OpenFrom { get; set; }
public virtual string OpenTo { get; set; }
public virtual string Special { get; set; }
}
public partial class RetailerOpeningTimes
{
public virtual List<RetailerOpeningTime> New { get; set; } = [];
public virtual List<RetailerOpeningTime> Used { get; set; } = [];
}
public partial class VehicleAttribute
{
public virtual string Description { get; set; }
public virtual string Value { get; set; }
}
public partial class VehicleConsumption
{
public virtual int Id { get; set; }
public virtual decimal Lkm { get; set; }
public virtual decimal Mpg { get; set; }
}
public partial class VehicleDetailDto
{
public virtual string BodyStyle { get; set; }
public virtual string Vin { get; set; }
public virtual string Description { get; set; }
public virtual string Colour { get; set; }
public virtual string ColourCode { get; set; }
public virtual string ColourDescription { get; set; }
public virtual string ColourGroup { get; set; }
public virtual string Model { get; set; }
public virtual string CommissionNumber { get; set; }
public virtual int? BrandId { get; set; }
public virtual Brand Brand { get; set; }
public virtual Engine Engine { get; set; }
public virtual string EngineBadge { get; set; }
public virtual Media Media { get; set; }
public virtual string Line { get; set; }
public virtual string UpholsteryCode { get; set; }
public virtual string UpholsteryType { get; set; }
public virtual string Upholstery { get; set; }
public virtual string UpholsteryDescription { get; set; }
public virtual List<string> AvailablePackages { get; set; } = [];
public virtual List<string> Packages { get; set; } = [];
public virtual decimal P11D { get; set; }
public virtual DateTime? PortArrivalDate { get; set; }
public virtual List<Price> Prices { get; set; } = [];
public virtual string TransmissionType { get; set; }
public virtual string FuelType { get; set; }
public virtual string VehicleClass { get; set; }
public virtual string ProductRange { get; set; }
public virtual string VehicleType { get; set; }
public virtual decimal? Emission { get; set; }
public virtual bool IsAvailableOnline { get; set; }
public virtual bool UnderOffer { get; set; }
public virtual bool IsExcluded { get; set; }
public virtual bool IsSellable { get; set; }
public virtual bool OnHold { get; set; }
public virtual decimal? ElectricConsumption { get; set; }
public virtual decimal? ElectricRange { get; set; }
public virtual string ImageUrl { get; set; }
public virtual string Baumuster { get; set; }
public virtual Retailer Retailer { get; set; }
public virtual string Bm7NST { get; set; }
public virtual decimal OTR { get; set; }
public virtual decimal ActualPrice { get; set; }
public virtual bool IsDisplayStock { get; set; }
public virtual int? DisplayRetailerId { get; set; }
public virtual string DisplayRetailer { get; set; }
public virtual string DisplayRetailerGssnId { get; set; }
public virtual string DisplayRetailerMarketAreaId { get; set; }
public virtual bool IsSmartDisplayRetailer { get; set; }
public virtual bool IsSpecialistCar { get; set; }
public virtual int? Age { get; set; }
public virtual bool Secured { get; set; }
public virtual bool IsHOBackOrderAccountVehicle { get; set; }
public virtual bool IsAllocatedToBackOrder { get; set; }
public virtual string UsageCode { get; set; }
public virtual decimal? EmissionCombined { get; set; }
public virtual string NormalisedEmissionDirective { get; set; }
public virtual bool HasMildHybridEquipmentCode { get; set; }
public virtual decimal RetailPriceExVat { get; set; }
public virtual decimal RetailPrice_IncVAT { get; set; }
public virtual decimal RetailPrice_ExVAT { get; set; }
public virtual int ModelId { get; set; }
public virtual string VID { get; set; }
public virtual string ProductionDate { get; set; }
public virtual string FullModelYearCode { get; set; }
public virtual string ChassisNumber { get; set; }
public virtual bool EligibleForIntegratedServiceCare { get; set; }
public virtual string AccountType { get; set; }
public virtual VehicleConsumption ConsumptionCombined { get; set; }
public virtual VehicleConsumption ConsumptionExtraUrban { get; set; }
public virtual VehicleConsumption ConsumptionUrban { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionCombined { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionExtraHigh { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionHigh { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionLow { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionMedium { get; set; }
public virtual List<Equipmentv2> Equipment { get; set; }
public virtual List<VehicleEquipmentCategory> EquipmentCategories { get; set; }
public virtual VehicleEmissionClass EnergyEfficiencyClass { get; set; }
public virtual List<VehicleAttribute> VehicleData { get; set; }
public virtual List<VehicleIntegratedServiceCareOption> IntegratedServiceCareOptions { get; set; } = [];
public virtual List<string> IspVehicleCustomerDescriptions { get; set; }
public virtual string ConfirmedProductionDate { get; set; }
public virtual string ForecastedArrivalDate { get; set; }
}
public partial class VehicleEmissionClass
{
public virtual string Colour { get; set; }
public virtual string Rating { get; set; }
}
public partial class VehicleEquipmentCategory
{
public virtual int Order { get; set; }
public virtual string Code { get; set; }
public virtual string Description { get; set; }
public virtual List<Equipmentv2> Equipment { get; set; }
}
public partial class VehicleError
{
public virtual string Field { get; set; }
public virtual string Message { get; set; }
}
public partial class VehicleIntegratedServiceCareOption
{
public virtual string OptionCode { get; set; }
public virtual string BM7NST { get; set; }
public virtual string FullModelYear { get; set; }
public virtual string IntegratedProductType { get; set; }
public virtual string CustomerDescription { get; set; }
public virtual string OneAgentProductType { get; set; }
}
}
namespace Mercedes.Agency.Orchestration.API.ServiceModel.Vehicles
{
public partial class GetVehicleRequest
{
public virtual string Vin { get; set; }
public virtual bool IncludeAllocatedToOrder { get; set; }
public virtual string Gssn { get; set; }
public virtual bool IsOneAdmin { get; set; }
}
}
namespace Mercedes.OS.Vehicle.Shared.POCO
{
public partial class Equipment
{
public virtual int? Id { get; set; }
public virtual string Code { get; set; }
public virtual string Description { get; set; }
}
public partial class Equipmentv2
: Equipment
{
public virtual int Importance { get; set; }
public virtual bool IsAdditional { get; set; }
}
}
namespace Mercedes.OS.Vehicle.Shared.POCO.Filters.v2
{
public partial class BodyStyle
{
public virtual int Id { get; set; }
public virtual string Description { get; set; }
public virtual List<Model> Models { get; set; }
}
public partial class Brand
{
public virtual int Id { get; set; }
public virtual string Description { get; set; }
public virtual string DisplayName { get; set; }
public virtual List<BodyStyle> BodyStyles { get; set; }
}
public partial class Model
{
public virtual int Id { get; set; }
public virtual string Description { get; set; }
public virtual string DisplayName { get; set; }
public virtual string ImageUrlSmall { get; set; }
public virtual string ImageUrlMedium { get; set; }
public virtual string ImageUrlLarge { get; set; }
public virtual bool Specialist { get; set; }
public virtual int? Priority { get; set; }
public virtual bool? ExcludeFromOnlineShowroomFilters { 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>