| POST | /v1/StockManagement | Gets vehicles for stock management |
|---|
const std = @import("std");
pub const BasicBackOrderVehicle = struct {
commissionNumber: ?[]const u8 = null,
description: ?[]const u8 = null,
model: ?[]const u8 = null,
colour: ?[]const u8 = null,
fuelType: ?[]const u8 = null,
transmission: ?[]const u8 = null,
packages: ?[]const u8 = null,
lines: ?[]const u8 = null,
upholstery: ?[]const u8 = null,
emissionCombined: ?[]const u8 = null,
actualPrice: f64 = 0,
usageCode: ?[]const u8 = null,
secured: bool = false,
account: ?[]const u8 = null,
securedTime: ?[]const u8 = null,
securedReason: ?[]const u8 = null,
securedByGasId: ?[]const u8 = null,
securedDate: ?[]const u8 = null,
confirmedProductionDate: ?[]const u8 = null,
forecastedArrivalDate: ?[]const u8 = null,
};
pub const BackOrderVehicle = struct {
commissionNumber: ?[]const u8 = null,
description: ?[]const u8 = null,
model: ?[]const u8 = null,
colour: ?[]const u8 = null,
fuelType: ?[]const u8 = null,
transmission: ?[]const u8 = null,
packages: ?[]const u8 = null,
lines: ?[]const u8 = null,
upholstery: ?[]const u8 = null,
emissionCombined: ?[]const u8 = null,
actualPrice: f64 = 0,
usageCode: ?[]const u8 = null,
secured: bool = false,
account: ?[]const u8 = null,
securedTime: ?[]const u8 = null,
securedReason: ?[]const u8 = null,
securedByGasId: ?[]const u8 = null,
securedDate: ?[]const u8 = null,
confirmedProductionDate: ?[]const u8 = null,
forecastedArrivalDate: ?[]const u8 = null,
id: i32 = 0,
vin: ?[]const u8 = null,
vehicleType: ?[]const u8 = null,
vid: ?[]const u8 = null,
fin: ?[]const u8 = null,
chassisNumber: ?[]const u8 = null,
modelYear: ?[]const u8 = null,
modelYearCode: ?[]const u8 = null,
halfModelYearCode: ?[]const u8 = null,
fullModelYearCode: ?[]const u8 = null,
salesDescriptionLong: ?[]const u8 = null,
vehicleClass: ?[]const u8 = null,
retailPrice_ExVAT: f64 = 0,
retailPrice_IncVAT: f64 = 0,
otr: f64 = 0,
bodyStyle: ?[]const u8 = null,
productRange: ?[]const u8 = null,
engine: ?[]const u8 = null,
isAMG: bool = false,
colourGroup: ?[]const u8 = null,
upholsteryCode: ?[]const u8 = null,
nst: ?[]const u8 = null,
bm7NST: ?[]const u8 = null,
acceleration: ?f64 = null,
bootCapacity: ?i32 = null,
topSpeed: ?f64 = null,
driveConcept: ?[]const u8 = null,
combustionPowerHp: ?f64 = null,
electricPowerKw: ?f64 = null,
electricPowerHp: ?f64 = null,
combinedPowerKw: ?f64 = null,
combinedPowerHP: ?f64 = null,
electricRange: ?f64 = null,
electricConsumption: ?f64 = null,
emission: ?f64 = null,
emissionDirective: ?[]const u8 = null,
emissionExtraUrban: ?[]const u8 = null,
emissionUrban: ?[]const u8 = null,
energyEfficiencyClass: ?[]const u8 = null,
wltpEmissionCombined: ?[]const u8 = null,
wltpCombined: ?[]const u8 = null,
wltpLow: ?[]const u8 = null,
wltpMedium: ?[]const u8 = null,
wltpHigh: ?[]const u8 = null,
wltpExtraHigh: ?[]const u8 = null,
portArrivalDate: ?[]const u8 = null,
creationDate: ?[]const u8 = null,
lastUpdated: ?[]const u8 = null,
isDisplayStock: bool = false,
displayStockAgent: ?[]const u8 = null,
isSpecialistCar: bool = false,
location: ?[]const u8 = null,
cesarIdShipToParty: ?[]const u8 = null,
isSellable: bool = false,
underOffer: bool = false,
baumuster: ?[]const u8 = null,
};
pub const StockManagementResponse = struct {
totalVehicles: i32 = 0,
vehicles: []BackOrderVehicle = &.{},
};
pub const Sort = struct {
id: i32 = 0,
};
pub const Paging = struct {
resultsPerPage: i32 = 0,
pageIndex: i32 = 0,
};
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 StockManagementRequest = struct {
sort: ?Sort = null,
paging: ?Paging = null,
criteria: ?VehicleSearchV3Criteria = null,
};
Zig StockManagementRequest 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/StockManagement HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<StockManagementRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.VehicleManagement.API.Shared.POCO.V3">
<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>
<Paging>
<PageIndex>0</PageIndex>
<ResultsPerPage>0</ResultsPerPage>
</Paging>
<Sort>
<Id>0</Id>
</Sort>
</StockManagementRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <StockManagementResponse 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" /> </StockManagementResponse>