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
const std = @import("std");

pub const BaseAllAvailableVehiclesRequest = struct {
    vehicleType: ?[]const u8 = null,
    includeBackOrderAccounts: bool = false,
};

pub const CsvVehicle = struct {
    // @DataMember(Name="Vehicle Type")
    Vehicle_Type: ?[]const u8 = null,

    vid: ?[]const u8 = null,
    vin: ?[]const u8 = null,
    fin: ?[]const u8 = null,
    // @DataMember(Name="Comm")
    Comm: ?[]const u8 = null,

    // @DataMember(Name="Chassis Number")
    Chassis_Number: ?[]const u8 = null,

    // @DataMember(Name="Model Year")
    Model_Year: ?[]const u8 = null,

    // @DataMember(Name="Model Year Code")
    Model_Year_Code: ?[]const u8 = null,

    // @DataMember(Name="Half Model Year Code")
    Half_Model_Year_Code: ?[]const u8 = null,

    // @DataMember(Name="Full Model Year Code")
    Full_Model_Year_Code: ?[]const u8 = null,

    // @DataMember(Name="Description")
    Description: ?[]const u8 = null,

    // @DataMember(Name="Vehicle Class")
    Vehicle_Class: ?[]const u8 = null,

    // @DataMember(Name="Body Style")
    Body_Style: ?[]const u8 = null,

    model: ?[]const u8 = null,
    colour: ?[]const u8 = null,
    // @DataMember(Name="Colour Group")
    Colour_Group: ?[]const u8 = null,

    // @DataMember(Name="Fuel Type")
    Fuel_Type: ?[]const u8 = null,

    transmission: ?[]const u8 = null,
    packages: ?[]const u8 = null,
    lines: ?[]const u8 = null,
    // @DataMember(Name="Product Range")
    Product_Range: ?[]const u8 = null,

    engine: ?[]const u8 = null,
    isAMG: bool = false,
    upholstery: ?[]const u8 = null,
    nst: ?[]const u8 = null,
    baumuster: ?[]const u8 = null,
    bm7NST: ?[]const u8 = null,
    acceleration: ?f64 = null,
    // @DataMember(Name="Boot Capacity")
    Boot_Capacity: ?i32 = null,

    // @DataMember(Name="Top Speed")
    Top_Speed: ?f64 = null,

    // @DataMember(Name="Drive Concept")
    Drive_Concept: ?[]const u8 = null,

    // @DataMember(Name="Combustion Power HP")
    Combustion_Power_HP: ?f64 = null,

    // @DataMember(Name="Electric Power KW")
    Electric_Power_KW: ?f64 = null,

    // @DataMember(Name="Electric Power HP")
    Electric_Power_HP: ?f64 = null,

    // @DataMember(Name="Combined Power KW")
    Combined_Power_KW: ?f64 = null,

    // @DataMember(Name="Combined Power HP")
    Combined_Power_HP: ?f64 = null,

    // @DataMember(Name="Electric Range")
    Electric_Range: ?f64 = null,

    // @DataMember(Name="Electric Consumption")
    Electric_Consumption: ?f64 = null,

    // @DataMember(Name="Emission Combined")
    Emission_Combined: ?[]const u8 = null,

    // @DataMember(Name="Emission Directive")
    Emission_Directive: ?[]const u8 = null,

    // @DataMember(Name="Emission Extra Urban")
    Emission_Extra_Urban: ?[]const u8 = null,

    // @DataMember(Name="Emission Urban")
    Emission_Urban: ?[]const u8 = null,

    emission: ?f64 = null,
    // @DataMember(Name="Test Standard")
    Test_Standard: ?[]const u8 = null,

    // @DataMember(Name="Energy Efficiency Class")
    Energy_Efficiency_Class: ?[]const u8 = null,

    // @DataMember(Name="WLTP Combined")
    WLTP_Combined: ?[]const u8 = null,

    // @DataMember(Name="WLTP Low")
    WLTP_Low: ?[]const u8 = null,

    // @DataMember(Name="WLTP Medium")
    WLTP_Medium: ?[]const u8 = null,

    // @DataMember(Name="WLTP High")
    WLTP_High: ?[]const u8 = null,

    // @DataMember(Name="WLTP Extra High")
    WLTP_Extra_High: ?[]const u8 = null,

    // @DataMember(Name="WLTP CO2 Emissions")
    WLTP_CO2_Emissions: ?[]const u8 = null,

    // @DataMember(Name="Port Arrival Date")
    Port_Arrival_Date: ?[]const u8 = null,

    // @DataMember(Name="Creation Date")
    Creation_Date: ?[]const u8 = null,

    // @DataMember(Name="Maintenance Date")
    Maintenance_Date: ?[]const u8 = null,

    // @DataMember(Name="Net Price")
    Net_Price: f64 = 0,

    // @DataMember(Name="Retail Price")
    Retail_Price: f64 = 0,

    // @DataMember(Name="OTR Price")
    OTR_Price: f64 = 0,

    // @DataMember(Name="Actual Price")
    Actual_Price: f64 = 0,

    // @DataMember(Name="Usage Code")
    Usage_Code: ?[]const u8 = null,

    secured: ?[]const u8 = null,
    account: ?[]const u8 = null,
    isDisplayStock: ?[]const u8 = null,
    // @DataMember(Name="Display Agent")
    Display_Agent: ?[]const u8 = null,

    isSpecialistCar: ?[]const u8 = null,
    cesarIdShipToParty: ?[]const u8 = null,
    isSellable: ?[]const u8 = null,
    // @DataMember(Name="Under Offer")
    Under_Offer: ?[]const u8 = null,

    // @DataMember(Name="Secured Date")
    Secured_Date: ?[]const u8 = null,

    // @DataMember(Name="Secured Reason")
    Secured_Reason: ?[]const u8 = null,

    // @DataMember(Name="Secured By Gas Id")
    Secured_By_Gas_Id: ?[]const u8 = null,

    // @DataMember(Name="Confirmed Production Date")
    Confirmed_Production_Date: ?[]const u8 = null,

    // @DataMember(Name="Forecasted Arrival Date")
    Forecasted_Arrival_Date: ?[]const u8 = null,
};

pub const InternalAvailableStockResponse = struct {
    totalVehicles: i32 = 0,
    vehicles: []CsvVehicle = &.{},
};

pub const CampaignExclusion = struct {
    vin: [][]const u8 = &.{},
    commissionNumber: [][]const u8 = &.{},
    modelYearCode: ?[]const u8 = null,
    equipmentCode: ?[]const u8 = null,
    gssn: [][]const u8 = &.{},
};

pub const RegistrationDate = struct {
    from: ?[]const u8 = null,
    to: ?[]const u8 = null,
};

pub const Age = struct {
    date: ?[]const u8 = null,
    min: i32 = 0,
    max: i32 = 0,
    includePipelineStock: bool = false,
};

pub const PortArrivalDate = struct {
    pipelineStock: bool = false,
    from: ?[]const u8 = null,
    to: ?[]const u8 = null,
};

pub const VehicleSearchV3Criteria = struct {
    vin: [][]const u8 = &.{},
    model: []i32 = &.{},
    fuel: []i32 = &.{},
    transmission: []i32 = &.{},
    engine: []i32 = &.{},
    line: [][]const u8 = &.{},
    mappedLine: []i32 = &.{},
    commissionNumber: [][]const u8 = &.{},
    vehicleType: ?[]const u8 = null,
    exclusion: ?CampaignExclusion = null,
    regNo: ?[]const u8 = null,
    includeOffline: bool = false,
    registrationDate: ?RegistrationDate = null,
    age: ?Age = null,
    portArrivalDate: ?PortArrivalDate = null,
    isAvailableOnline: ?bool = null,
    isBackOrdered: ?bool = null,
    isSellable: ?bool = null,
    isUnderOffer: ?bool = null,
    mbukSecured: ?bool = null,
    account: [][]const u8 = &.{},
    baumuster: [][]const u8 = &.{},
    colours: []i32 = &.{},
    upholstery: []i32 = &.{},
    package: []i32 = &.{},
    nst: [][]const u8 = &.{},
    usageCode: [][]const u8 = &.{},
};

pub const AllAvailableVehiclesByCriteriaCsvRequest = struct {
    vehicleType: ?[]const u8 = null,
    includeBackOrderAccounts: bool = false,
    criteria: ?VehicleSearchV3Criteria = null,
};

Zig 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>