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 'package:servicestack/servicestack.dart';

abstract class BaseAllAvailableVehiclesRequest
{
    String vehicleType = "";
    bool includeBackOrderAccounts;

    BaseAllAvailableVehiclesRequest({this.vehicleType,this.includeBackOrderAccounts});
    BaseAllAvailableVehiclesRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        vehicleType = json['vehicleType'];
        includeBackOrderAccounts = json['includeBackOrderAccounts'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'vehicleType': vehicleType,
        'includeBackOrderAccounts': includeBackOrderAccounts
    };

    getTypeName() => "BaseAllAvailableVehiclesRequest";
    TypeContext? context = _ctx;
}

class CsvVehicle implements IConvertible
{
    // @DataMember(Name="Vehicle Type")
    String Vehicle_Type = "";

    String vid = "";
    String vin = "";
    String fin = "";
    // @DataMember(Name="Comm")
    String Comm = "";

    // @DataMember(Name="Chassis Number")
    String Chassis_Number = "";

    // @DataMember(Name="Model Year")
    String Model_Year = "";

    // @DataMember(Name="Model Year Code")
    String Model_Year_Code = "";

    // @DataMember(Name="Half Model Year Code")
    String Half_Model_Year_Code = "";

    // @DataMember(Name="Full Model Year Code")
    String Full_Model_Year_Code = "";

    // @DataMember(Name="Description")
    String Description = "";

    // @DataMember(Name="Vehicle Class")
    String Vehicle_Class = "";

    // @DataMember(Name="Body Style")
    String Body_Style = "";

    String model = "";
    String colour = "";
    // @DataMember(Name="Colour Group")
    String Colour_Group = "";

    // @DataMember(Name="Fuel Type")
    String Fuel_Type = "";

    String transmission = "";
    String packages = "";
    String lines = "";
    // @DataMember(Name="Product Range")
    String Product_Range = "";

    String engine = "";
    bool isAMG;
    String upholstery = "";
    String nst = "";
    String baumuster = "";
    String bm7NST = "";
    double? acceleration;
    // @DataMember(Name="Boot Capacity")
    int? Boot_Capacity;

    // @DataMember(Name="Top Speed")
    double? Top_Speed;

    // @DataMember(Name="Drive Concept")
    String Drive_Concept = "";

    // @DataMember(Name="Combustion Power HP")
    double? Combustion_Power_HP;

    // @DataMember(Name="Electric Power KW")
    double? Electric_Power_KW;

    // @DataMember(Name="Electric Power HP")
    double? Electric_Power_HP;

    // @DataMember(Name="Combined Power KW")
    double? Combined_Power_KW;

    // @DataMember(Name="Combined Power HP")
    double? Combined_Power_HP;

    // @DataMember(Name="Electric Range")
    double? Electric_Range;

    // @DataMember(Name="Electric Consumption")
    double? Electric_Consumption;

    // @DataMember(Name="Emission Combined")
    String Emission_Combined = "";

    // @DataMember(Name="Emission Directive")
    String Emission_Directive = "";

    // @DataMember(Name="Emission Extra Urban")
    String Emission_Extra_Urban = "";

    // @DataMember(Name="Emission Urban")
    String Emission_Urban = "";

    double? emission;
    // @DataMember(Name="Test Standard")
    String Test_Standard = "";

    // @DataMember(Name="Energy Efficiency Class")
    String Energy_Efficiency_Class = "";

    // @DataMember(Name="WLTP Combined")
    String WLTP_Combined = "";

    // @DataMember(Name="WLTP Low")
    String WLTP_Low = "";

    // @DataMember(Name="WLTP Medium")
    String WLTP_Medium = "";

    // @DataMember(Name="WLTP High")
    String WLTP_High = "";

    // @DataMember(Name="WLTP Extra High")
    String WLTP_Extra_High = "";

    // @DataMember(Name="WLTP CO2 Emissions")
    String WLTP_CO2_Emissions = "";

    // @DataMember(Name="Production Date")
    DateTime? Production_Date;

    // @DataMember(Name="Port Arrival Date")
    DateTime? Port_Arrival_Date;

    // @DataMember(Name="Creation Date")
    DateTime Creation_Date = DateTime(0);

    // @DataMember(Name="Maintenance Date")
    DateTime? Maintenance_Date;

    // @DataMember(Name="Net Price")
    double Net_Price = 0;

    // @DataMember(Name="Retail Price")
    double Retail_Price = 0;

    // @DataMember(Name="OTR Price")
    double OTR_Price = 0;

    // @DataMember(Name="Actual Price")
    double Actual_Price = 0;

    // @DataMember(Name="Usage Code")
    String Usage_Code = "";

    String secured = "";
    String account = "";
    String isDisplayStock = "";
    // @DataMember(Name="Display Agent")
    String Display_Agent = "";

    String isSpecialistCar = "";
    String cesarIdShipToParty = "";
    String isSellable = "";
    // @DataMember(Name="Under Offer")
    String Under_Offer = "";

    // @DataMember(Name="Secured Date")
    String? Secured_Date;

    // @DataMember(Name="Secured Reason")
    String? Secured_Reason;

    // @DataMember(Name="Secured By Gas Id")
    String? Secured_By_Gas_Id;

    // @DataMember(Name="Confirmed Production Date")
    String? Confirmed_Production_Date;

    // @DataMember(Name="Forecasted Arrival Date")
    String? Forecasted_Arrival_Date;

    CsvVehicle({this.Vehicle_Type,this.vid,this.vin,this.fin,this.Comm,this.Chassis_Number,this.Model_Year,this.Model_Year_Code,this.Half_Model_Year_Code,this.Full_Model_Year_Code,this.Description,this.Vehicle_Class,this.Body_Style,this.model,this.colour,this.Colour_Group,this.Fuel_Type,this.transmission,this.packages,this.lines,this.Product_Range,this.engine,this.isAMG,this.upholstery,this.nst,this.baumuster,this.bm7NST,this.acceleration,this.Boot_Capacity,this.Top_Speed,this.Drive_Concept,this.Combustion_Power_HP,this.Electric_Power_KW,this.Electric_Power_HP,this.Combined_Power_KW,this.Combined_Power_HP,this.Electric_Range,this.Electric_Consumption,this.Emission_Combined,this.Emission_Directive,this.Emission_Extra_Urban,this.Emission_Urban,this.emission,this.Test_Standard,this.Energy_Efficiency_Class,this.WLTP_Combined,this.WLTP_Low,this.WLTP_Medium,this.WLTP_High,this.WLTP_Extra_High,this.WLTP_CO2_Emissions,this.Production_Date,this.Port_Arrival_Date,this.Creation_Date,this.Maintenance_Date,this.Net_Price,this.Retail_Price,this.OTR_Price,this.Actual_Price,this.Usage_Code,this.secured,this.account,this.isDisplayStock,this.Display_Agent,this.isSpecialistCar,this.cesarIdShipToParty,this.isSellable,this.Under_Offer,this.Secured_Date,this.Secured_Reason,this.Secured_By_Gas_Id,this.Confirmed_Production_Date,this.Forecasted_Arrival_Date});
    CsvVehicle.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Vehicle_Type = json['vehicleType'];
        vid = json['vid'];
        vin = json['vin'];
        fin = json['fin'];
        Comm = json['commissionNumber'];
        Chassis_Number = json['chassisNumber'];
        Model_Year = json['modelYear'];
        Model_Year_Code = json['modelYearCode'];
        Half_Model_Year_Code = json['halfModelYearCode'];
        Full_Model_Year_Code = json['fullModelYearCode'];
        Description = json['salesDescriptionLong'];
        Vehicle_Class = json['vehicleClass'];
        Body_Style = json['bodyStyle'];
        model = json['model'];
        colour = json['colour'];
        Colour_Group = json['colourGroup'];
        Fuel_Type = json['fuelType'];
        transmission = json['transmission'];
        packages = json['packages'];
        lines = json['lines'];
        Product_Range = json['productRange'];
        engine = json['engine'];
        isAMG = json['isAMG'];
        upholstery = json['upholstery'];
        nst = json['nst'];
        baumuster = json['baumuster'];
        bm7NST = json['bm7NST'];
        acceleration = JsonConverters.toDouble(json['acceleration']);
        Boot_Capacity = json['bootCapacity'];
        Top_Speed = JsonConverters.toDouble(json['topSpeed']);
        Drive_Concept = json['driveConcept'];
        Combustion_Power_HP = JsonConverters.toDouble(json['combustionPowerHp']);
        Electric_Power_KW = JsonConverters.toDouble(json['electricPowerKw']);
        Electric_Power_HP = JsonConverters.toDouble(json['electricPowerHp']);
        Combined_Power_KW = JsonConverters.toDouble(json['combinedPowerKw']);
        Combined_Power_HP = JsonConverters.toDouble(json['combinedPowerHP']);
        Electric_Range = JsonConverters.toDouble(json['electricRange']);
        Electric_Consumption = JsonConverters.toDouble(json['electricConsumption']);
        Emission_Combined = json['emissionCombined'];
        Emission_Directive = json['emissionDirective'];
        Emission_Extra_Urban = json['emissionExtraUrban'];
        Emission_Urban = json['emissionUrban'];
        emission = JsonConverters.toDouble(json['emission']);
        Test_Standard = json['testStandard'];
        Energy_Efficiency_Class = json['energyEfficiencyClass'];
        WLTP_Combined = json['wltpCombined'];
        WLTP_Low = json['wltpLow'];
        WLTP_Medium = json['wltpMedium'];
        WLTP_High = json['wltpHigh'];
        WLTP_Extra_High = json['wltpExtraHigh'];
        WLTP_CO2_Emissions = json['wltpEmissionCombined'];
        Production_Date = JsonConverters.fromJson(json['productionDate'],'DateTime',context!);
        Port_Arrival_Date = JsonConverters.fromJson(json['portArrivalDate'],'DateTime',context!);
        Creation_Date = JsonConverters.fromJson(json['creationDate'],'DateTime',context!);
        Maintenance_Date = JsonConverters.fromJson(json['lastUpdated'],'DateTime',context!);
        Net_Price = JsonConverters.toDouble(json['retailPrice_ExVAT']);
        Retail_Price = JsonConverters.toDouble(json['retailPrice_IncVAT']);
        OTR_Price = JsonConverters.toDouble(json['otr']);
        Actual_Price = JsonConverters.toDouble(json['actualPrice']);
        Usage_Code = json['usageCode'];
        secured = json['secured'];
        account = json['account'];
        isDisplayStock = json['isDisplayStock'];
        Display_Agent = json['displayStockAgent'];
        isSpecialistCar = json['isSpecialistCar'];
        cesarIdShipToParty = json['cesarIdShipToParty'];
        isSellable = json['isSellable'];
        Under_Offer = json['underOffer'];
        Secured_Date = json['securedDate'];
        Secured_Reason = json['securedReason'];
        Secured_By_Gas_Id = json['securedByGasId'];
        Confirmed_Production_Date = json['confirmedProductionDate'];
        Forecasted_Arrival_Date = json['forecastedArrivalDate'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'vehicle_Type': Vehicle_Type,
        'vid': vid,
        'vin': vin,
        'fin': fin,
        'comm': Comm,
        'chassis_Number': Chassis_Number,
        'model_Year': Model_Year,
        'model_Year_Code': Model_Year_Code,
        'half_Model_Year_Code': Half_Model_Year_Code,
        'full_Model_Year_Code': Full_Model_Year_Code,
        'description': Description,
        'vehicle_Class': Vehicle_Class,
        'body_Style': Body_Style,
        'model': model,
        'colour': colour,
        'colour_Group': Colour_Group,
        'fuel_Type': Fuel_Type,
        'transmission': transmission,
        'packages': packages,
        'lines': lines,
        'product_Range': Product_Range,
        'engine': engine,
        'isAMG': isAMG,
        'upholstery': upholstery,
        'nst': nst,
        'baumuster': baumuster,
        'bm7NST': bm7NST,
        'acceleration': acceleration,
        'boot_Capacity': Boot_Capacity,
        'top_Speed': Top_Speed,
        'drive_Concept': Drive_Concept,
        'combustion_Power_HP': Combustion_Power_HP,
        'electric_Power_KW': Electric_Power_KW,
        'electric_Power_HP': Electric_Power_HP,
        'combined_Power_KW': Combined_Power_KW,
        'combined_Power_HP': Combined_Power_HP,
        'electric_Range': Electric_Range,
        'electric_Consumption': Electric_Consumption,
        'emission_Combined': Emission_Combined,
        'emission_Directive': Emission_Directive,
        'emission_Extra_Urban': Emission_Extra_Urban,
        'emission_Urban': Emission_Urban,
        'emission': emission,
        'test_Standard': Test_Standard,
        'energy_Efficiency_Class': Energy_Efficiency_Class,
        'wltP_Combined': WLTP_Combined,
        'wltP_Low': WLTP_Low,
        'wltP_Medium': WLTP_Medium,
        'wltP_High': WLTP_High,
        'wltP_Extra_High': WLTP_Extra_High,
        'wltP_CO2_Emissions': WLTP_CO2_Emissions,
        'production_Date': JsonConverters.toJson(Production_Date,'DateTime',context!),
        'port_Arrival_Date': JsonConverters.toJson(Port_Arrival_Date,'DateTime',context!),
        'creation_Date': JsonConverters.toJson(Creation_Date,'DateTime',context!),
        'maintenance_Date': JsonConverters.toJson(Maintenance_Date,'DateTime',context!),
        'net_Price': Net_Price,
        'retail_Price': Retail_Price,
        'otR_Price': OTR_Price,
        'actual_Price': Actual_Price,
        'usage_Code': Usage_Code,
        'secured': secured,
        'account': account,
        'isDisplayStock': isDisplayStock,
        'display_Agent': Display_Agent,
        'isSpecialistCar': isSpecialistCar,
        'cesarIdShipToParty': cesarIdShipToParty,
        'isSellable': isSellable,
        'under_Offer': Under_Offer,
        'secured_Date': Secured_Date,
        'secured_Reason': Secured_Reason,
        'secured_By_Gas_Id': Secured_By_Gas_Id,
        'confirmed_Production_Date': Confirmed_Production_Date,
        'forecasted_Arrival_Date': Forecasted_Arrival_Date
    };

    getTypeName() => "CsvVehicle";
    TypeContext? context = _ctx;
}

class InternalAvailableStockResponse implements IConvertible
{
    int totalVehicles = 0;
    List<CsvVehicle>? vehicles;

    InternalAvailableStockResponse({this.totalVehicles,this.vehicles});
    InternalAvailableStockResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        totalVehicles = json['totalVehicles'];
        vehicles = JsonConverters.fromJson(json['vehicles'],'List<CsvVehicle>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'totalVehicles': totalVehicles,
        'vehicles': JsonConverters.toJson(vehicles,'List<CsvVehicle>',context!)
    };

    getTypeName() => "InternalAvailableStockResponse";
    TypeContext? context = _ctx;
}

class CampaignExclusion implements IConvertible
{
    List<String> vin = [];
    List<String> commissionNumber = [];
    String modelYearCode = "";
    String equipmentCode = "";
    List<String> gssn = [];

    CampaignExclusion({this.vin,this.commissionNumber,this.modelYearCode,this.equipmentCode,this.gssn});
    CampaignExclusion.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        vin = JsonConverters.fromJson(json['vin'],'List<String>',context!);
        commissionNumber = JsonConverters.fromJson(json['commissionNumber'],'List<String>',context!);
        modelYearCode = json['modelYearCode'];
        equipmentCode = json['equipmentCode'];
        gssn = JsonConverters.fromJson(json['gssn'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'vin': JsonConverters.toJson(vin,'List<String>',context!),
        'commissionNumber': JsonConverters.toJson(commissionNumber,'List<String>',context!),
        'modelYearCode': modelYearCode,
        'equipmentCode': equipmentCode,
        'gssn': JsonConverters.toJson(gssn,'List<String>',context!)
    };

    getTypeName() => "CampaignExclusion";
    TypeContext? context = _ctx;
}

class RegistrationDate implements IConvertible
{
    DateTime from = DateTime(0);
    DateTime to = DateTime(0);

    RegistrationDate({this.from,this.to});
    RegistrationDate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        from = JsonConverters.fromJson(json['from'],'DateTime',context!);
        to = JsonConverters.fromJson(json['to'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'from': JsonConverters.toJson(from,'DateTime',context!),
        'to': JsonConverters.toJson(to,'DateTime',context!)
    };

    getTypeName() => "RegistrationDate";
    TypeContext? context = _ctx;
}

class Age implements IConvertible
{
    DateTime date = DateTime(0);
    int min = 0;
    int max = 0;
    bool includePipelineStock;

    Age({this.date,this.min,this.max,this.includePipelineStock});
    Age.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        date = JsonConverters.fromJson(json['date'],'DateTime',context!);
        min = json['min'];
        max = json['max'];
        includePipelineStock = json['includePipelineStock'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'date': JsonConverters.toJson(date,'DateTime',context!),
        'min': min,
        'max': max,
        'includePipelineStock': includePipelineStock
    };

    getTypeName() => "Age";
    TypeContext? context = _ctx;
}

class PortArrivalDate implements IConvertible
{
    bool pipelineStock;
    DateTime from = DateTime(0);
    DateTime to = DateTime(0);

    PortArrivalDate({this.pipelineStock,this.from,this.to});
    PortArrivalDate.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        pipelineStock = json['pipelineStock'];
        from = JsonConverters.fromJson(json['from'],'DateTime',context!);
        to = JsonConverters.fromJson(json['to'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'pipelineStock': pipelineStock,
        'from': JsonConverters.toJson(from,'DateTime',context!),
        'to': JsonConverters.toJson(to,'DateTime',context!)
    };

    getTypeName() => "PortArrivalDate";
    TypeContext? context = _ctx;
}

class VehicleSearchV3Criteria implements IConvertible
{
    List<String> vin = [];
    List<int> model = [];
    List<int> fuel = [];
    List<int> transmission = [];
    List<int> engine = [];
    List<String> line = [];
    List<int> mappedLine = [];
    List<String> commissionNumber = [];
    String vehicleType = "";
    CampaignExclusion exclusion;
    String regNo = "";
    bool includeOffline;
    RegistrationDate registrationDate;
    Age age;
    PortArrivalDate portArrivalDate;
    bool? isAvailableOnline;
    bool? isBackOrdered;
    bool? isSellable;
    bool? isUnderOffer;
    bool? mbukSecured;
    List<String> account = [];
    List<String> baumuster = [];
    List<int> colours = [];
    List<int> upholstery = [];
    List<int> package = [];
    List<String> nst = [];
    List<String> usageCode = [];

    VehicleSearchV3Criteria({this.vin,this.model,this.fuel,this.transmission,this.engine,this.line,this.mappedLine,this.commissionNumber,this.vehicleType,this.exclusion,this.regNo,this.includeOffline,this.registrationDate,this.age,this.portArrivalDate,this.isAvailableOnline,this.isBackOrdered,this.isSellable,this.isUnderOffer,this.mbukSecured,this.account,this.baumuster,this.colours,this.upholstery,this.package,this.nst,this.usageCode});
    VehicleSearchV3Criteria.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        vin = JsonConverters.fromJson(json['vin'],'List<String>',context!);
        model = JsonConverters.fromJson(json['model'],'List<int>',context!);
        fuel = JsonConverters.fromJson(json['fuel'],'List<int>',context!);
        transmission = JsonConverters.fromJson(json['transmission'],'List<int>',context!);
        engine = JsonConverters.fromJson(json['engine'],'List<int>',context!);
        line = JsonConverters.fromJson(json['line'],'List<String>',context!);
        mappedLine = JsonConverters.fromJson(json['mappedLine'],'List<int>',context!);
        commissionNumber = JsonConverters.fromJson(json['commissionNumber'],'List<String>',context!);
        vehicleType = json['vehicleType'];
        exclusion = JsonConverters.fromJson(json['exclusion'],'CampaignExclusion',context!);
        regNo = json['regNo'];
        includeOffline = json['includeOffline'];
        registrationDate = JsonConverters.fromJson(json['registrationDate'],'RegistrationDate',context!);
        age = JsonConverters.fromJson(json['age'],'Age',context!);
        portArrivalDate = JsonConverters.fromJson(json['portArrivalDate'],'PortArrivalDate',context!);
        isAvailableOnline = json['isAvailableOnline'];
        isBackOrdered = json['isBackOrdered'];
        isSellable = json['isSellable'];
        isUnderOffer = json['isUnderOffer'];
        mbukSecured = json['mbukSecured'];
        account = JsonConverters.fromJson(json['account'],'List<String>',context!);
        baumuster = JsonConverters.fromJson(json['baumuster'],'List<String>',context!);
        colours = JsonConverters.fromJson(json['colours'],'List<int>',context!);
        upholstery = JsonConverters.fromJson(json['upholstery'],'List<int>',context!);
        package = JsonConverters.fromJson(json['package'],'List<int>',context!);
        nst = JsonConverters.fromJson(json['nst'],'List<String>',context!);
        usageCode = JsonConverters.fromJson(json['usageCode'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'vin': JsonConverters.toJson(vin,'List<String>',context!),
        'model': JsonConverters.toJson(model,'List<int>',context!),
        'fuel': JsonConverters.toJson(fuel,'List<int>',context!),
        'transmission': JsonConverters.toJson(transmission,'List<int>',context!),
        'engine': JsonConverters.toJson(engine,'List<int>',context!),
        'line': JsonConverters.toJson(line,'List<String>',context!),
        'mappedLine': JsonConverters.toJson(mappedLine,'List<int>',context!),
        'commissionNumber': JsonConverters.toJson(commissionNumber,'List<String>',context!),
        'vehicleType': vehicleType,
        'exclusion': JsonConverters.toJson(exclusion,'CampaignExclusion',context!),
        'regNo': regNo,
        'includeOffline': includeOffline,
        'registrationDate': JsonConverters.toJson(registrationDate,'RegistrationDate',context!),
        'age': JsonConverters.toJson(age,'Age',context!),
        'portArrivalDate': JsonConverters.toJson(portArrivalDate,'PortArrivalDate',context!),
        'isAvailableOnline': isAvailableOnline,
        'isBackOrdered': isBackOrdered,
        'isSellable': isSellable,
        'isUnderOffer': isUnderOffer,
        'mbukSecured': mbukSecured,
        'account': JsonConverters.toJson(account,'List<String>',context!),
        'baumuster': JsonConverters.toJson(baumuster,'List<String>',context!),
        'colours': JsonConverters.toJson(colours,'List<int>',context!),
        'upholstery': JsonConverters.toJson(upholstery,'List<int>',context!),
        'package': JsonConverters.toJson(package,'List<int>',context!),
        'nst': JsonConverters.toJson(nst,'List<String>',context!),
        'usageCode': JsonConverters.toJson(usageCode,'List<String>',context!)
    };

    getTypeName() => "VehicleSearchV3Criteria";
    TypeContext? context = _ctx;
}

class AllAvailableVehiclesByCriteriaCsvRequest extends BaseAllAvailableVehiclesRequest implements IPost, IConvertible
{
    VehicleSearchV3Criteria criteria;

    AllAvailableVehiclesByCriteriaCsvRequest({this.criteria});
    AllAvailableVehiclesByCriteriaCsvRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        criteria = JsonConverters.fromJson(json['criteria'],'VehicleSearchV3Criteria',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'criteria': JsonConverters.toJson(criteria,'VehicleSearchV3Criteria',context!)
    });

    getTypeName() => "AllAvailableVehiclesByCriteriaCsvRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'uat_api_vehicle_mgt_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
    'BaseAllAvailableVehiclesRequest': TypeInfo(TypeOf.AbstractClass),
    'CsvVehicle': TypeInfo(TypeOf.Class, create:() => CsvVehicle()),
    'InternalAvailableStockResponse': TypeInfo(TypeOf.Class, create:() => InternalAvailableStockResponse()),
    'List<CsvVehicle>': TypeInfo(TypeOf.Class, create:() => <CsvVehicle>[]),
    'CampaignExclusion': TypeInfo(TypeOf.Class, create:() => CampaignExclusion()),
    'RegistrationDate': TypeInfo(TypeOf.Class, create:() => RegistrationDate()),
    'Age': TypeInfo(TypeOf.Class, create:() => Age()),
    'PortArrivalDate': TypeInfo(TypeOf.Class, create:() => PortArrivalDate()),
    'VehicleSearchV3Criteria': TypeInfo(TypeOf.Class, create:() => VehicleSearchV3Criteria()),
    'AllAvailableVehiclesByCriteriaCsvRequest': TypeInfo(TypeOf.Class, create:() => AllAvailableVehiclesByCriteriaCsvRequest()),
});

Dart AllAvailableVehiclesByCriteriaCsvRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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/json
Content-Type: application/json
Content-Length: length

{"criteria":{"vin":["String"],"model":[0],"fuel":[0],"transmission":[0],"engine":[0],"line":["String"],"mappedLine":[0],"commissionNumber":["String"],"vehicleType":"String","exclusion":{"vin":["String"],"commissionNumber":["String"],"modelYearCode":"String","equipmentCode":"String","gssn":["String"]},"regNo":"String","includeOffline":false,"registrationDate":{"from":"\/Date(-62135596800000-0000)\/","to":"\/Date(-62135596800000-0000)\/"},"age":{"date":"\/Date(-62135596800000-0000)\/","min":0,"max":0,"includePipelineStock":false},"portArrivalDate":{"pipelineStock":false,"from":"\/Date(-62135596800000-0000)\/","to":"\/Date(-62135596800000-0000)\/"},"isAvailableOnline":false,"isBackOrdered":false,"isSellable":false,"isUnderOffer":false,"mbukSecured":false,"account":["String"],"baumuster":["String"],"colours":[0],"upholstery":[0],"package":[0],"nst":["String"],"usageCode":["String"]},"vehicleType":"String","includeBackOrderAccounts":false}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"totalVehicles":0}