GET | /v1/{VehicleType}/Vehicle/{vehicleIdentifier} | Get vehicle data by commission number |
---|
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 VehicleByCommissionNumberRequest
: IGet
{
public virtual string vehicleIdentifier { get; set; }
public virtual string VehicleType { get; set; }
}
}
namespace Mercedes.VehicleManagement.API.Shared.POCO
{
public partial class FinanceOffer
{
public virtual string CampaignDescription { get; set; }
public virtual string TermsAndConditions { get; set; }
public virtual string Label { get; set; }
public virtual int CampaignId { get; set; }
public virtual string DocumentUrl { get; set; }
public virtual string From { get; set; }
public virtual int Id { get; set; }
public virtual string To { get; set; }
public virtual string Value { get; set; }
public virtual string Vin { get; set; }
public virtual bool Enabled { get; set; }
public virtual bool Pending { get; set; }
public virtual string OfferType { get; set; }
}
public partial class Message
{
public virtual int Id { get; set; }
public virtual string Vin { get; set; }
public virtual int CampaignId { get; set; }
public virtual string Value { get; set; }
public virtual string CampaignDescription { get; set; }
public virtual string From { get; set; }
public virtual string To { get; set; }
public virtual string DocumentUrl { get; set; }
}
public partial class Offer
{
public virtual int Id { get; set; }
public virtual string OfferType { get; set; }
public virtual string CampaignName { get; set; }
public virtual string From { get; set; }
public virtual string To { get; set; }
public virtual string Value { get; set; }
public virtual decimal? Net { get; set; }
public virtual OfferVehicle OfferVehicle { get; set; }
public virtual bool Pending { get; set; }
public virtual string DocumentUrl { get; set; }
public virtual bool Personalised { get; set; }
public virtual bool IsPersonalisedMonetaryOffer { get; set; }
public virtual bool CampaignVIPDiscount { get; set; }
public virtual decimal? OfferValueNet { get; set; }
}
public partial class OfferHistory
{
public virtual int Id { get; set; }
public virtual string AuditType { get; set; }
public virtual string OfferType { get; set; }
public virtual string Source { get; set; }
public virtual string From { get; set; }
public virtual string To { get; set; }
public virtual bool Personalised { get; set; }
public virtual string Value { get; set; }
public virtual string Net { get; set; }
public virtual string VAT { get; set; }
public virtual string Description { get; set; }
public virtual string Vin { get; set; }
public virtual string Gssn { get; set; }
public virtual string Creation { get; set; }
public virtual string Modified { get; set; }
public virtual string UserId { get; set; }
public virtual int User { get; set; }
public virtual int OfferId { get; set; }
public virtual string CommissionNumber { get; set; }
public virtual int? CampaignId { get; set; }
public virtual string CampaignDescription { get; set; }
public virtual DateTime CreationDate { get; set; }
public virtual bool IsUsedCarOffer { get; set; }
}
public partial class OfferVehicle
{
public virtual string RetailPriceExVAT { get; set; }
}
public partial class PersonalisedOffer
: Offer
{
public virtual string Category { get; set; }
public virtual string Description { get; set; }
public virtual string Reference { get; set; }
}
public partial class VehicleByCommissionNumberResponse
: VehicleByIdentifierResponse
{
public virtual VehicleIdentifierData Vehicle { get; set; }
}
public partial class VehicleByIdentifierResponse
{
public virtual List<Offer> CampaignOffers { get; set; } = [];
public virtual List<PersonalisedOffer> CampaignPersonalisedOffers { get; set; } = [];
public virtual List<Offer> CampaignOLEVGrantOffers { get; set; } = [];
public virtual List<Message> CampaignMessages { get; set; } = [];
public virtual List<OfferHistory> OfferHistories { get; set; }
public virtual List<FinanceOffer> FinanceOffers { get; set; }
}
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; } = [];
}
}
C# VehicleByCommissionNumberRequest 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.
GET /v1/{VehicleType}/Vehicle/{vehicleIdentifier} HTTP/1.1 Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { vehicle: { 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 ] }, campaignOffers: [ { id: 0, offerType: String, campaignName: String, from: String, to: String, value: String, net: 0, offerVehicle: { retailPriceExVAT: String }, pending: False, documentUrl: String, personalised: False, isPersonalisedMonetaryOffer: False, campaignVIPDiscount: False, offerValueNet: 0 } ], campaignPersonalisedOffers: [ { category: String, description: String, reference: String, id: 0, offerType: String, campaignName: String, from: String, to: String, value: String, net: 0, offerVehicle: { retailPriceExVAT: String }, pending: False, documentUrl: String, personalised: False, isPersonalisedMonetaryOffer: False, campaignVIPDiscount: False, offerValueNet: 0 } ], campaignOLEVGrantOffers: [ { id: 0, offerType: String, campaignName: String, from: String, to: String, value: String, net: 0, offerVehicle: { retailPriceExVAT: String }, pending: False, documentUrl: String, personalised: False, isPersonalisedMonetaryOffer: False, campaignVIPDiscount: False, offerValueNet: 0 } ], campaignMessages: [ { id: 0, vin: String, campaignId: 0, value: String, campaignDescription: String, from: String, to: String, documentUrl: String } ], offerHistories: [ { id: 0, auditType: String, offerType: String, source: String, from: String, to: String, personalised: False, value: String, net: String, vat: String, description: String, vin: String, gssn: String, creation: String, modified: String, userId: String, user: 0, offerId: 0, commissionNumber: String, campaignId: 0, campaignDescription: String, creationDate: 0001-01-01, isUsedCarOffer: False } ], financeOffers: [ { campaignDescription: String, termsAndConditions: String, label: String, campaignId: 0, documentUrl: String, from: String, id: 0, to: String, value: String, vin: String, enabled: False, pending: False, offerType: String } ] }