POST | /v1/backorder/vehicleimports |
---|
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Mercedes.Agency.Orchestration.API.ServiceModel.Vehicles;
using Mercedes.Agency.API.Shared.POCO;
using Mercedes.Agency.API.Shared.Enums;
using Mercedes.OS.Vehicle.Shared.POCO;
namespace Mercedes.Agency.API.Shared.POCO
{
public partial class Price
{
public virtual string Id { get; set; }
public virtual string Description { get; set; }
public virtual decimal Net { get; set; }
public virtual decimal VAT { get; set; }
public virtual decimal Gross { get; set; }
public virtual OfferPriceProductType Product { get; set; }
}
public partial class Retailer
{
public virtual int Id { get; set; }
public virtual string GssnId { get; set; }
public virtual string Description { get; set; }
public virtual string Street { get; set; }
public virtual string City { get; set; }
public virtual string Postcode { get; set; }
public virtual string GoogleMapPostcode { get; set; }
public virtual string Phone { get; set; }
public virtual string Fax { get; set; }
public virtual string Email { get; set; }
public virtual string Website { get; set; }
public virtual string RetailerGroupId { get; set; }
public virtual string RetailerGroupName { get; set; }
public virtual bool IsOnline { get; set; }
public virtual bool IsNewCarRetailer { get; set; }
public virtual bool IsUsedCarRetailer { get; set; }
public virtual bool IsCentralRetailer { get; set; }
public virtual bool ChatEnabled { get; set; }
public virtual bool TradeInEnabled { get; set; }
public virtual bool smart { get; set; }
public virtual string DisplayPhoneNumberNew { get; set; }
public virtual string DisplayPhoneNumberUsed { get; set; }
public virtual decimal Latitude { get; set; }
public virtual decimal Longitude { get; set; }
public virtual string smartDescription { get; set; }
public virtual string smartWebsite { get; set; }
public virtual string smartPhone { get; set; }
public virtual string LegacyId { get; set; }
public virtual bool Agent { get; set; }
public virtual int MarketAreaId { get; set; }
public virtual string DigitalLoungeParentGssnId { get; set; }
public virtual bool SendLeadsToDigitalLoungeParent { get; set; }
public virtual RetailerOpeningTimes OpeningTimes { get; set; }
}
public partial class RetailerOpeningTime
{
public virtual string Day { get; set; }
public virtual string OpenFrom { get; set; }
public virtual string OpenTo { get; set; }
public virtual string Special { get; set; }
}
public partial class RetailerOpeningTimes
{
public virtual List<RetailerOpeningTime> New { get; set; } = [];
public virtual List<RetailerOpeningTime> Used { get; set; } = [];
}
public partial class Vehicle
{
public virtual string Vin { get; set; }
}
public partial class VehicleAttribute
{
public virtual string Description { get; set; }
public virtual string Value { get; set; }
}
public partial class VehicleBaseDetail
: Vehicle, ICommissionNumber
{
public virtual string Description { get; set; }
public virtual string CommissionNumber { get; set; }
public virtual string PortArrivalDate { get; set; }
public virtual string OfferExpiryDate { get; set; }
public virtual string Fuel { get; set; }
public virtual string Transmission { get; set; }
public virtual string TransmissionType { get; set; }
public virtual string Colour { get; set; }
public virtual string ColourDescription { get; set; }
public virtual string ImageUrl { get; set; }
public virtual bool Specialist { get; set; }
public virtual VehicleCriteriaMatch VehicleCriteriaMatch { get; set; }
public virtual string ColourGroup { get; set; }
public virtual string Model { get; set; }
public virtual string BodyStyle { get; set; }
public virtual string Brand { get; set; }
public virtual string Engine { get; set; }
public virtual string EngineDescription { get; set; }
public virtual string Line { get; set; }
public virtual string Upholstery { get; set; }
public virtual string UpholsteryDescription { get; set; }
public virtual List<string> Packages { get; set; } = [];
public virtual decimal P11D { get; set; }
public virtual List<Price> Prices { get; set; } = [];
public virtual string VehicleClass { get; set; }
public virtual string ProductRange { get; set; }
public virtual string VehicleType { get; set; }
public virtual decimal? Emission { get; set; }
public virtual string Baumuster { get; set; }
public virtual bool IsSellable { get; set; }
public virtual string Bm7NST { get; set; }
public virtual decimal? ElectricRange { get; set; }
public virtual decimal? ElectricConsumption { get; set; }
public virtual bool IsDisplayStock { get; set; }
public virtual int? DisplayRetailer_Id { get; set; }
public virtual string DisplayRetailer { get; set; }
public virtual string DisplayRetailerGssnId { get; set; }
public virtual Retailer Retailer { get; set; }
public virtual int? Age { get; set; }
public virtual string ModelYearCode { get; set; }
public virtual string HalfModelYearCode { get; set; }
public virtual string FullModelYearCode { get; set; }
public virtual string ProductionDate { get; set; }
public virtual string ChassisNumber { get; set; }
public virtual bool EligibleForIntegratedServiceCare { get; set; }
}
public partial class VehicleConsumption
{
public virtual int Id { get; set; }
public virtual decimal Lkm { get; set; }
public virtual decimal Mpg { get; set; }
}
public partial class VehicleCriteriaMatch
{
public virtual bool Fuel { get; set; }
public virtual bool Transmission { get; set; }
public virtual bool Colour { get; set; }
public virtual bool Upholstery { get; set; }
public virtual bool Line { get; set; }
public virtual bool Engine { get; set; }
public virtual bool BodyStyle { get; set; }
public virtual bool Packages { get; set; }
}
public partial class VehicleDetail
: VehicleBaseDetail
{
public virtual string RetailPrice_ExVAT { get; set; }
public virtual string OTR { get; set; }
public virtual string ActualPrice { get; set; }
public virtual string TotalOfferValue { get; set; }
public virtual bool IsHOBackOrderAccountVehicle { get; set; }
public virtual VehicleConsumption ConsumptionCombined { get; set; }
public virtual VehicleConsumption ConsumptionExtraUrban { get; set; }
public virtual VehicleConsumption ConsumptionUrban { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionCombined { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionExtraHigh { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionHigh { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionLow { get; set; }
public virtual VehicleConsumption WltpFuelConsumptionMedium { get; set; }
public virtual List<VehicleEquipmentCategory> EquipmentCategories { get; set; }
public virtual VehicleEmissionClass VehicleEnergyEfficiencyClass { get; set; }
public virtual List<VehicleAttribute> VehicleData { get; set; }
public virtual List<VehicleIntegratedServiceCareOption> IntegratedProducts { get; set; } = [];
public virtual List<string> IspVehicleCustomerDescriptions { get; set; }
public virtual string ColourCode { get; set; }
public virtual string UpholsteryCode { get; set; }
}
public partial class VehicleEmissionClass
{
public virtual string Colour { get; set; }
public virtual string Rating { get; set; }
}
public partial class VehicleEquipmentCategory
{
public virtual int Order { get; set; }
public virtual string Code { get; set; }
public virtual string Description { get; set; }
public virtual List<Equipmentv2> Equipment { get; set; }
}
public partial class VehicleImport
: Vehicle
{
public virtual string CommissionNumber { get; set; }
public virtual bool Sellable { get; set; }
public virtual VehicleDetail Vehicle { get; set; }
}
public partial class VehicleIntegratedServiceCareOption
{
public virtual string OptionCode { get; set; }
public virtual string BM7NST { get; set; }
public virtual string FullModelYear { get; set; }
public virtual string IntegratedProductType { get; set; }
public virtual string CustomerDescription { get; set; }
public virtual string OneAgentProductType { get; set; }
}
}
namespace Mercedes.Agency.Orchestration.API.ServiceModel.Vehicles
{
[ApiResponse(Description="Success", StatusCode=200)]
[ApiResponse(Description="BadRequest", StatusCode=400)]
public partial class UpdateBackOrderVehicleImportsRequest
: IPost
{
public virtual List<VehicleImport> VehicleImports { get; set; } = [];
}
public partial class UpdateBackOrderVehicleImportsResponse
{
}
}
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; }
}
public partial class Equipmentv2
: Equipment
{
public virtual int Importance { get; set; }
public virtual bool IsAdditional { get; set; }
}
}
C# UpdateBackOrderVehicleImportsRequest 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/backorder/vehicleimports HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
VehicleImports:
[
{
CommissionNumber: String,
Sellable: False,
Vehicle:
{
RetailPrice_ExVAT: String,
OTR: String,
ActualPrice: String,
TotalOfferValue: String,
IsHOBackOrderAccountVehicle: False,
ConsumptionCombined:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
ConsumptionExtraUrban:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
ConsumptionUrban:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
WltpFuelConsumptionCombined:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
WltpFuelConsumptionExtraHigh:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
WltpFuelConsumptionHigh:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
WltpFuelConsumptionLow:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
WltpFuelConsumptionMedium:
{
Id: 0,
Lkm: 0,
Mpg: 0
},
EquipmentCategories:
[
{
Order: 0,
Code: String,
Description: String,
Equipment:
[
{
Importance: 0,
IsAdditional: False,
Id: 0,
Code: String,
Description: String
}
]
}
],
VehicleEnergyEfficiencyClass:
{
Colour: String,
Rating: String
},
VehicleData:
[
{
Description: String,
Value: String
}
],
IntegratedProducts:
[
{
OptionCode: String,
BM7NST: String,
FullModelYear: String,
IntegratedProductType: String,
CustomerDescription: String,
OneAgentProductType: String
}
],
IspVehicleCustomerDescriptions:
[
String
],
ColourCode: String,
UpholsteryCode: String,
Description: String,
CommissionNumber: String,
PortArrivalDate: String,
OfferExpiryDate: String,
Fuel: String,
Transmission: String,
TransmissionType: String,
Colour: String,
ColourDescription: String,
ImageUrl: String,
Specialist: False,
VehicleCriteriaMatch:
{
Fuel: False,
Transmission: False,
Colour: False,
Upholstery: False,
Line: False,
Engine: False,
BodyStyle: False,
Packages: False
},
ColourGroup: String,
Model: String,
BodyStyle: String,
Brand: String,
Engine: String,
EngineDescription: String,
Line: String,
Upholstery: String,
UpholsteryDescription: String,
Packages:
[
String
],
P11D: 0,
Prices:
[
{
Id: String,
Description: String,
Net: 0,
VAT: 0,
Gross: 0,
Product: LIST_PRICE
}
],
VehicleClass: String,
ProductRange: String,
VehicleType: String,
Emission: 0,
Baumuster: String,
IsSellable: False,
Bm7NST: String,
ElectricRange: 0,
ElectricConsumption: 0,
IsDisplayStock: False,
DisplayRetailer_Id: 0,
DisplayRetailer: String,
DisplayRetailerGssnId: String,
Retailer:
{
Id: 0,
GssnId: String,
Description: String,
Street: String,
City: String,
Postcode: String,
GoogleMapPostcode: String,
Phone: String,
Fax: String,
Email: String,
Website: String,
RetailerGroupId: String,
RetailerGroupName: String,
IsOnline: False,
IsNewCarRetailer: False,
IsUsedCarRetailer: False,
IsCentralRetailer: False,
ChatEnabled: False,
TradeInEnabled: False,
smart: False,
DisplayPhoneNumberNew: String,
DisplayPhoneNumberUsed: String,
Latitude: 0,
Longitude: 0,
smartDescription: String,
smartWebsite: String,
smartPhone: String,
LegacyId: String,
Agent: False,
MarketAreaId: 0,
DigitalLoungeParentGssnId: String,
SendLeadsToDigitalLoungeParent: False,
OpeningTimes:
{
New:
[
{
Day: String,
OpenFrom: String,
OpenTo: String,
Special: String
}
],
Used:
[
{
Day: String,
OpenFrom: String,
OpenTo: String,
Special: String
}
]
}
},
Age: 0,
ModelYearCode: String,
HalfModelYearCode: String,
FullModelYearCode: String,
ProductionDate: String,
ChassisNumber: String,
EligibleForIntegratedServiceCare: False,
Vin: String
},
Vin: String
}
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { }