Mercedes.VehicleManagement.API

<back to all web services

AllAvailableVehiclesByCriteriaCsvRequest

Vehicle
Requires Authentication
The following routes are available for this service:
POST/v1/AllAvailableVehiclesCsv/{vehicleType}/{includeBackOrderAccounts}Get all available vehicles
import Foundation
import ServiceStack

public class AllAvailableVehiclesByCriteriaCsvRequest : BaseAllAvailableVehiclesRequest, IPost
{
    public var criteria:VehicleSearchV3Criteria

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case criteria
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        criteria = try container.decodeIfPresent(VehicleSearchV3Criteria.self, forKey: .criteria)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if criteria != nil { try container.encode(criteria, forKey: .criteria) }
    }
}

public class BaseAllAvailableVehiclesRequest : Codable
{
    public var vehicleType:String
    public var includeBackOrderAccounts:Bool

    required public init(){}
}

public class VehicleSearchV3Criteria : Codable
{
    public var vin:[String] = []
    public var model:[Int] = []
    public var fuel:[Int] = []
    public var transmission:[Int] = []
    public var engine:[Int] = []
    public var line:[String] = []
    public var mappedLine:[Int] = []
    public var commissionNumber:[String] = []
    public var vehicleType:String
    public var exclusion:CampaignExclusion
    public var regNo:String
    public var includeOffline:Bool
    public var registrationDate:RegistrationDate
    public var age:Age
    public var portArrivalDate:PortArrivalDate
    public var isAvailableOnline:Bool?
    public var isBackOrdered:Bool?
    public var isSellable:Bool?
    public var isUnderOffer:Bool?
    public var mbukSecured:Bool?
    public var account:[String] = []
    public var baumuster:[String] = []
    public var colours:[Int] = []
    public var upholstery:[Int] = []
    public var package:[Int] = []
    public var nst:[String] = []
    public var usageCode:[String] = []

    required public init(){}
}

public class CampaignExclusion : Codable
{
    public var vin:[String] = []
    public var commissionNumber:[String] = []
    public var modelYearCode:String
    public var equipmentCode:String
    public var gssn:[String] = []

    required public init(){}
}

public class RegistrationDate : Codable
{
    public var from:Date
    public var to:Date

    required public init(){}
}

public class Age : Codable
{
    public var date:Date
    public var min:Int
    public var max:Int
    public var includePipelineStock:Bool

    required public init(){}
}

public class PortArrivalDate : Codable
{
    public var pipelineStock:Bool
    public var from:Date
    public var to:Date

    required public init(){}
}

public class InternalAvailableStockResponse : Codable
{
    public var totalVehicles:Int
    public var vehicles:[CsvVehicle]

    required public init(){}
}

public class CsvVehicle : Codable
{
    // @DataMember(Name="Vehicle Type")
    public var Vehicle_Type:String

    public var vid:String
    public var vin:String
    public var fin:String
    // @DataMember(Name="Comm")
    public var Comm:String

    // @DataMember(Name="Chassis Number")
    public var Chassis_Number:String

    // @DataMember(Name="Model Year")
    public var Model_Year:String

    // @DataMember(Name="Model Year Code")
    public var Model_Year_Code:String

    // @DataMember(Name="Half Model Year Code")
    public var Half_Model_Year_Code:String

    // @DataMember(Name="Full Model Year Code")
    public var Full_Model_Year_Code:String

    // @DataMember(Name="Description")
    public var Description:String

    // @DataMember(Name="Vehicle Class")
    public var Vehicle_Class:String

    // @DataMember(Name="Body Style")
    public var Body_Style:String

    public var model:String
    public var colour:String
    // @DataMember(Name="Colour Group")
    public var Colour_Group:String

    // @DataMember(Name="Fuel Type")
    public var Fuel_Type:String

    public var transmission:String
    public var packages:String
    public var lines:String
    // @DataMember(Name="Product Range")
    public var Product_Range:String

    public var engine:String
    public var isAMG:Bool
    public var upholstery:String
    public var nst:String
    public var baumuster:String
    public var bm7NST:String
    public var acceleration:Double?
    // @DataMember(Name="Boot Capacity")
    public var Boot_Capacity:Int?

    // @DataMember(Name="Top Speed")
    public var Top_Speed:Double?

    // @DataMember(Name="Drive Concept")
    public var Drive_Concept:String

    // @DataMember(Name="Combustion Power HP")
    public var Combustion_Power_HP:Double?

    // @DataMember(Name="Electric Power KW")
    public var Electric_Power_KW:Double?

    // @DataMember(Name="Electric Power HP")
    public var Electric_Power_HP:Double?

    // @DataMember(Name="Combined Power KW")
    public var Combined_Power_KW:Double?

    // @DataMember(Name="Combined Power HP")
    public var Combined_Power_HP:Double?

    // @DataMember(Name="Electric Range")
    public var Electric_Range:Double?

    // @DataMember(Name="Electric Consumption")
    public var Electric_Consumption:Double?

    // @DataMember(Name="Emission Combined")
    public var Emission_Combined:String

    // @DataMember(Name="Emission Directive")
    public var Emission_Directive:String

    // @DataMember(Name="Emission Extra Urban")
    public var Emission_Extra_Urban:String

    // @DataMember(Name="Emission Urban")
    public var Emission_Urban:String

    public var emission:Double?
    // @DataMember(Name="Test Standard")
    public var Test_Standard:String

    // @DataMember(Name="Energy Efficiency Class")
    public var Energy_Efficiency_Class:String

    // @DataMember(Name="WLTP Combined")
    public var WLTP_Combined:String

    // @DataMember(Name="WLTP Low")
    public var WLTP_Low:String

    // @DataMember(Name="WLTP Medium")
    public var WLTP_Medium:String

    // @DataMember(Name="WLTP High")
    public var WLTP_High:String

    // @DataMember(Name="WLTP Extra High")
    public var WLTP_Extra_High:String

    // @DataMember(Name="WLTP CO2 Emissions")
    public var WLTP_CO2_Emissions:String

    // @DataMember(Name="Production Date")
    public var Production_Date:Date?

    // @DataMember(Name="Port Arrival Date")
    public var Port_Arrival_Date:Date?

    // @DataMember(Name="Creation Date")
    public var Creation_Date:Date

    // @DataMember(Name="Maintenance Date")
    public var Maintenance_Date:Date?

    // @DataMember(Name="Net Price")
    public var Net_Price:Double

    // @DataMember(Name="Retail Price")
    public var Retail_Price:Double

    // @DataMember(Name="OTR Price")
    public var OTR_Price:Double

    // @DataMember(Name="Actual Price")
    public var Actual_Price:Double

    // @DataMember(Name="Usage Code")
    public var Usage_Code:String

    public var secured:String
    public var account:String
    public var isDisplayStock:String
    // @DataMember(Name="Display Agent")
    public var Display_Agent:String

    public var isSpecialistCar:String
    public var cesarIdShipToParty:String
    public var isSellable:String
    // @DataMember(Name="Under Offer")
    public var Under_Offer:String

    // @DataMember(Name="Secured Date")
    public var Secured_Date:String

    // @DataMember(Name="Secured Reason")
    public var Secured_Reason:String

    // @DataMember(Name="Secured By Gas Id")
    public var Secured_By_Gas_Id:String

    required public init(){}
}


Swift AllAvailableVehiclesByCriteriaCsvRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/AllAvailableVehiclesCsv/{vehicleType}/{includeBackOrderAccounts} HTTP/1.1 
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<AllAvailableVehiclesByCriteriaCsvRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.Shared.POCO.V3">
  <IncludeBackOrderAccounts>false</IncludeBackOrderAccounts>
  <VehicleType>String</VehicleType>
  <Criteria>
    <Account xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Account>
    <Age>
      <Date>0001-01-01T00:00:00</Date>
      <IncludePipelineStock>false</IncludePipelineStock>
      <Max>0</Max>
      <Min>0</Min>
    </Age>
    <Baumuster xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Baumuster>
    <Colours xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Colours>
    <CommissionNumber xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </CommissionNumber>
    <Engine xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Engine>
    <Exclusion>
      <CommissionNumber xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </CommissionNumber>
      <EquipmentCode>String</EquipmentCode>
      <Gssn xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </Gssn>
      <ModelYearCode>String</ModelYearCode>
      <Vin xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <d4p1:string>String</d4p1:string>
      </Vin>
    </Exclusion>
    <Fuel xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Fuel>
    <IncludeOffline>false</IncludeOffline>
    <IsAvailableOnline>false</IsAvailableOnline>
    <IsBackOrdered>false</IsBackOrdered>
    <IsSellable>false</IsSellable>
    <IsUnderOffer>false</IsUnderOffer>
    <Line xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Line>
    <MBUKSecured>false</MBUKSecured>
    <MappedLine xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </MappedLine>
    <Model xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Model>
    <NST xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </NST>
    <Package xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Package>
    <PortArrivalDate>
      <From>0001-01-01T00:00:00</From>
      <PipelineStock>false</PipelineStock>
      <To>0001-01-01T00:00:00</To>
    </PortArrivalDate>
    <RegNo>String</RegNo>
    <RegistrationDate>
      <From>0001-01-01T00:00:00</From>
      <To>0001-01-01T00:00:00</To>
    </RegistrationDate>
    <Transmission xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Transmission>
    <Upholstery xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:int>0</d3p1:int>
    </Upholstery>
    <UsageCode xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </UsageCode>
    <VehicleType>String</VehicleType>
    <Vin xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Vin>
  </Criteria>
</AllAvailableVehiclesByCriteriaCsvRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<InternalAvailableStockResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.Shared.POCO.V3">
  <TotalVehicles>0</TotalVehicles>
  <Vehicles i:nil="true" />
</InternalAvailableStockResponse>