POST | /v1/{VehicleType}/Vehicle/Motability | Filter motability vehicle data |
---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Mercedes.VehicleManagement.API.ServiceModel;
using Mercedes.VehicleManagement.API.Shared.POCO;
using Mercedes.OS.Vehicle.Shared.POCO;
namespace Mercedes.OS.Vehicle.Shared.POCO
{
public partial class Equipment
{
public virtual int Id { get; set; }
public virtual string Code { get; set; }
public virtual string Description { get; set; }
}
}
namespace Mercedes.VehicleManagement.API.ServiceModel
{
public partial class MotabilityVehiclesFilterRequest
: IPost
{
public virtual int Min { get; set; }
public virtual int Max { get; set; }
public virtual bool NoPortArrivalDate { get; set; }
public virtual string VehicleType { get; set; }
}
}
namespace Mercedes.VehicleManagement.API.Shared.POCO
{
public partial class VehicleData
: VehicleDataBase
{
public virtual string Engine { get; set; }
}
public partial class VehicleDataBase
{
public virtual string Vin { get; set; }
public virtual string Description { get; set; }
public virtual string Model { get; set; }
public virtual string Otr { get; set; }
public virtual string RetailPriceExVAT { get; set; }
public virtual string ActualPrice { get; set; }
public virtual string FuelType { get; set; }
public virtual string Transmission { get; set; }
public virtual string TransmissionType { get; set; }
public virtual string Colour { get; set; }
public virtual string ColourCode { get; set; }
public virtual string ColourDescription { get; set; }
public virtual string CommissionNumber { get; set; }
public virtual bool OfferAvailable { get; set; }
public virtual int CampaignDiscountOfferTotal { get; set; }
public virtual int CampaignDiscountOfferTotalCurrent { get; set; }
public virtual int CampaignDiscountOfferTotalPending { get; set; }
public virtual int CampaignServiceOfferTotal { get; set; }
public virtual int CampaignServiceOfferTotalCurrent { get; set; }
public virtual int CampaignServiceOfferTotalPending { get; set; }
public virtual int CampaignCustomOfferTotal { get; set; }
public virtual int CampaignPersonalisedOfferTotalCurrent { get; set; }
public virtual int CampaignPersonalisedOfferTotalPending { get; set; }
public virtual int CampaignPersonalisedOfferTotal { get; set; }
public virtual int CampaignCustomOfferTotalCurrent { get; set; }
public virtual int CampaignCustomOfferTotalPending { get; set; }
public virtual int CampaignOtherOfferTotal { get; set; }
public virtual int CampaignOtherOfferTotalCurrent { get; set; }
public virtual int CampaignOtherOfferTotalPending { get; set; }
public virtual int RetailerDiscountOfferTotal { get; set; }
public virtual int RetailerDiscountOfferTotalCurrent { get; set; }
public virtual int RetailerDiscountOfferTotalPending { get; set; }
public virtual int RetailerServiceOfferTotal { get; set; }
public virtual int RetailerServiceOfferTotalCurrent { get; set; }
public virtual int RetailerServiceOfferTotalPending { get; set; }
public virtual int RetailerCustomOfferTotal { get; set; }
public virtual int RetailerCustomOfferTotalCurrent { get; set; }
public virtual int RetailerCustomOfferTotalPending { get; set; }
public virtual int RetailerWarrantyOfferTotal { get; set; }
public virtual int RetailerWarrantyOfferTotalCurrent { get; set; }
public virtual int RetailerWarrantyOfferTotalPending { get; set; }
public virtual int RetailerOfferTotal { get; set; }
public virtual int RetailerOfferTotalCurrent { get; set; }
public virtual int RetailerOfferTotalPending { get; set; }
public virtual int CampaignOfferTotal { get; set; }
public virtual int CampaignOfferTotalCurrent { get; set; }
public virtual int CampaignOfferTotalPending { get; set; }
public virtual int CampaignAndOfferTotal { get; set; }
public virtual int CampaignAndOfferTotalCurrent { get; set; }
public virtual int CampaignAndOfferTotalPending { get; set; }
public virtual int OfferTotal { get; set; }
public virtual int OfferTotalCurrent { get; set; }
public virtual int OfferTotalPending { get; set; }
public virtual string Creation { get; set; }
public virtual string Modified { get; set; }
public virtual int ElectricRange { get; set; }
public virtual int ElectricConsumption { get; set; }
public virtual DateTime? PortArrivalDate { get; set; }
public virtual int? DaysSincePortArrival { get; set; }
public virtual decimal RetailPriceIncVAT { get; set; }
public virtual string BodyStyle { get; set; }
public virtual string Upholstery { get; set; }
public virtual string UpholsteryCode { get; set; }
public virtual string UpholsteryType { get; set; }
public virtual List<string> PackageNames { get; set; } = [];
public virtual string Line { get; set; }
public virtual decimal CurrentRetailerOfferPrice { get; set; }
public virtual string RetailPrice { get; set; }
public virtual bool VATQualifying { get; set; }
public virtual int RetailerId { get; set; }
public virtual string GssnId { get; set; }
public virtual bool NoImage { get; set; }
public virtual string ImageUrl { get; set; }
public virtual bool IsAvailableOnline { get; set; }
public virtual bool IsBackOrdered { get; set; }
public virtual string CreationDate { get; set; }
public virtual string MaintenanceDate { get; set; }
public virtual string RegistrationNumber { get; set; }
public virtual DateTime? RegistrationDate { get; set; }
public virtual int? Mileage { get; set; }
public virtual DateTime? TradeInDate { get; set; }
public virtual string Source { get; set; }
public virtual string VehicleType { get; set; }
public virtual string OfferAmount { get; set; }
public virtual string OfferExpiry { get; set; }
public virtual int[] ActiveOffers { get; set; } = [];
public virtual int CampaignMessagesTotal { get; set; }
public virtual bool UnderOffer { get; set; }
public virtual bool IsDisplayStock { get; set; }
public virtual string DisplayRetailer { get; set; }
public virtual string DisplayRetailerGssnId { get; set; }
public virtual string Location { get; set; }
public virtual string Account { get; set; }
public virtual string AccountType { get; set; }
public virtual string UsageCode { get; set; }
public virtual string Bm7NST { get; set; }
public virtual bool IsSellable { get; set; }
public virtual bool Secured { get; set; }
public virtual bool Specialist { get; set; }
public virtual bool IsMotabilityRetailer { get; set; }
public virtual string UpholsteryDescription { get; set; }
public virtual bool InBackOrderAccount { get; set; }
public virtual string FullModelYearCode { get; set; }
public virtual DateTime? ProductionDate { get; set; }
public virtual string Baumuster { get; set; }
public virtual bool IsMotability { get; set; }
public virtual decimal? PipAdvanceRentalGross { get; set; }
public virtual decimal? WpmsAdvanceRentalGross { get; set; }
public virtual List<string> IspVehicleCustomerDescriptions { get; set; }
}
public partial class VehicleIdentifierData
: VehicleData
{
public virtual string Retailer { get; set; }
public virtual bool HasMotabilityError { get; set; }
public virtual List<Equipment> Equipment { get; set; } = [];
}
public partial class VehiclesByRetailerResponse
{
public virtual List<VehicleIdentifierData> Vehicles { get; set; } = [];
}
}
C# MotabilityVehiclesFilterRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/{VehicleType}/Vehicle/Motability HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
min: 0,
max: 0,
noPortArrivalDate: False,
vehicleType: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { vehicles: [ { retailer: String, hasMotabilityError: False, equipment: [ { id: 0, code: String, description: String } ], engine: String, vin: String, description: String, model: String, otr: String, retailPriceExVAT: String, actualPrice: String, fuelType: String, transmission: String, transmissionType: String, colour: String, colourCode: String, colourDescription: String, commissionNumber: String, offerAvailable: False, campaignDiscountOfferTotal: 0, campaignDiscountOfferTotalCurrent: 0, campaignDiscountOfferTotalPending: 0, campaignServiceOfferTotal: 0, campaignServiceOfferTotalCurrent: 0, campaignServiceOfferTotalPending: 0, campaignCustomOfferTotal: 0, campaignPersonalisedOfferTotalCurrent: 0, campaignPersonalisedOfferTotalPending: 0, campaignPersonalisedOfferTotal: 0, campaignCustomOfferTotalCurrent: 0, campaignCustomOfferTotalPending: 0, campaignOtherOfferTotal: 0, campaignOtherOfferTotalCurrent: 0, campaignOtherOfferTotalPending: 0, retailerDiscountOfferTotal: 0, retailerDiscountOfferTotalCurrent: 0, retailerDiscountOfferTotalPending: 0, retailerServiceOfferTotal: 0, retailerServiceOfferTotalCurrent: 0, retailerServiceOfferTotalPending: 0, retailerCustomOfferTotal: 0, retailerCustomOfferTotalCurrent: 0, retailerCustomOfferTotalPending: 0, retailerWarrantyOfferTotal: 0, retailerWarrantyOfferTotalCurrent: 0, retailerWarrantyOfferTotalPending: 0, retailerOfferTotal: 0, retailerOfferTotalCurrent: 0, retailerOfferTotalPending: 0, campaignOfferTotal: 0, campaignOfferTotalCurrent: 0, campaignOfferTotalPending: 0, campaignAndOfferTotal: 0, campaignAndOfferTotalCurrent: 0, campaignAndOfferTotalPending: 0, offerTotal: 0, offerTotalCurrent: 0, offerTotalPending: 0, creation: String, modified: String, electricRange: 0, electricConsumption: 0, portArrivalDate: 0001-01-01, daysSincePortArrival: 0, retailPriceIncVAT: 0, bodyStyle: String, upholstery: String, upholsteryCode: String, upholsteryType: String, packageNames: [ String ], line: String, currentRetailerOfferPrice: 0, retailPrice: String, vatQualifying: False, retailerId: 0, gssnId: String, noImage: False, imageUrl: String, isAvailableOnline: False, isBackOrdered: False, creationDate: String, maintenanceDate: String, registrationNumber: String, registrationDate: 0001-01-01, mileage: 0, tradeInDate: 0001-01-01, source: String, vehicleType: String, offerAmount: String, offerExpiry: String, activeOffers: [ 0 ], campaignMessagesTotal: 0, underOffer: False, isDisplayStock: False, displayRetailer: String, displayRetailerGssnId: String, location: String, account: String, accountType: String, usageCode: String, bm7NST: String, isSellable: False, secured: False, specialist: False, isMotabilityRetailer: False, upholsteryDescription: String, inBackOrderAccount: False, fullModelYearCode: String, productionDate: 0001-01-01, baumuster: String, isMotability: False, pipAdvanceRentalGross: 0, wpmsAdvanceRentalGross: 0, ispVehicleCustomerDescriptions: [ String ] } ] }