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