| POST | /v1/StockManagement | Gets vehicles for stock management |
|---|
package dtos
import (
"time"
)
type BasicBackOrderVehicle struct {
CommissionNumber string `json:"commissionNumber"`
Description string `json:"description"`
Model string `json:"model"`
Colour string `json:"colour"`
FuelType string `json:"fuelType"`
Transmission string `json:"transmission"`
Packages string `json:"packages"`
Lines string `json:"lines"`
Upholstery string `json:"upholstery"`
EmissionCombined string `json:"emissionCombined"`
ActualPrice float64 `json:"actualPrice,omitempty"`
UsageCode string `json:"usageCode"`
Secured bool `json:"secured,omitempty"`
Account string `json:"account"`
SecuredTime *string `json:"securedTime,omitempty"`
SecuredReason *string `json:"securedReason,omitempty"`
SecuredByGasId *string `json:"securedByGasId,omitempty"`
SecuredDate *time.Time `json:"securedDate,omitempty"`
ConfirmedProductionDate *time.Time `json:"confirmedProductionDate,omitempty"`
ForecastedArrivalDate *time.Time `json:"forecastedArrivalDate,omitempty"`
}
type BackOrderVehicle struct {
BasicBackOrderVehicle
Id int `json:"id,omitempty"`
Vin string `json:"vin"`
VehicleType string `json:"vehicleType"`
Vid string `json:"vid"`
Fin string `json:"fin"`
ChassisNumber string `json:"chassisNumber"`
ModelYear string `json:"modelYear"`
ModelYearCode string `json:"modelYearCode"`
HalfModelYearCode string `json:"halfModelYearCode"`
FullModelYearCode string `json:"fullModelYearCode"`
SalesDescriptionLong string `json:"salesDescriptionLong"`
VehicleClass string `json:"vehicleClass"`
RetailPriceExVAT float64 `json:"retailPrice_ExVAT,omitempty"`
RetailPriceIncVAT float64 `json:"retailPrice_IncVAT,omitempty"`
Otr float64 `json:"otr,omitempty"`
BodyStyle string `json:"bodyStyle"`
ProductRange string `json:"productRange"`
Engine string `json:"engine"`
IsAMG bool `json:"isAMG,omitempty"`
ColourGroup string `json:"colourGroup"`
UpholsteryCode string `json:"upholsteryCode"`
Nst string `json:"nst"`
Bm7NST string `json:"bm7NST"`
Acceleration *float64 `json:"acceleration,omitempty"`
BootCapacity *int `json:"bootCapacity,omitempty"`
TopSpeed *float64 `json:"topSpeed,omitempty"`
DriveConcept string `json:"driveConcept"`
CombustionPowerHp *float64 `json:"combustionPowerHp,omitempty"`
ElectricPowerKw *float64 `json:"electricPowerKw,omitempty"`
ElectricPowerHp *float64 `json:"electricPowerHp,omitempty"`
CombinedPowerKw *float64 `json:"combinedPowerKw,omitempty"`
CombinedPowerHP *float64 `json:"combinedPowerHP,omitempty"`
ElectricRange *float64 `json:"electricRange,omitempty"`
ElectricConsumption *float64 `json:"electricConsumption,omitempty"`
Emission *float64 `json:"emission,omitempty"`
EmissionDirective string `json:"emissionDirective"`
EmissionExtraUrban string `json:"emissionExtraUrban"`
EmissionUrban string `json:"emissionUrban"`
EnergyEfficiencyClass string `json:"energyEfficiencyClass"`
WltpEmissionCombined string `json:"wltpEmissionCombined"`
WltpCombined string `json:"wltpCombined"`
WltpLow string `json:"wltpLow"`
WltpMedium string `json:"wltpMedium"`
WltpHigh string `json:"wltpHigh"`
WltpExtraHigh string `json:"wltpExtraHigh"`
PortArrivalDate *time.Time `json:"portArrivalDate,omitempty"`
CreationDate time.Time `json:"creationDate,omitempty"`
LastUpdated *time.Time `json:"lastUpdated,omitempty"`
IsDisplayStock bool `json:"isDisplayStock,omitempty"`
DisplayStockAgent string `json:"displayStockAgent"`
IsSpecialistCar bool `json:"isSpecialistCar,omitempty"`
Location string `json:"location"`
CesarIdShipToParty string `json:"cesarIdShipToParty"`
IsSellable bool `json:"isSellable,omitempty"`
UnderOffer bool `json:"underOffer,omitempty"`
Baumuster string `json:"baumuster"`
}
type StockManagementResponse struct {
TotalVehicles int `json:"totalVehicles,omitempty"`
Vehicles []BackOrderVehicle `json:"vehicles"`
}
type Sort struct {
Id int `json:"id,omitempty"`
}
type Paging struct {
ResultsPerPage int `json:"resultsPerPage,omitempty"`
PageIndex int `json:"pageIndex,omitempty"`
}
type CampaignExclusion struct {
Vin []string `json:"vin"`
CommissionNumber []string `json:"commissionNumber"`
ModelYearCode string `json:"modelYearCode"`
EquipmentCode string `json:"equipmentCode"`
Gssn []string `json:"gssn"`
}
type RegistrationDate struct {
From time.Time `json:"from,omitempty"`
To time.Time `json:"to,omitempty"`
}
type Age struct {
Date time.Time `json:"date,omitempty"`
Min int `json:"min,omitempty"`
Max int `json:"max,omitempty"`
IncludePipelineStock bool `json:"includePipelineStock,omitempty"`
}
type PortArrivalDate struct {
PipelineStock bool `json:"pipelineStock,omitempty"`
From time.Time `json:"from,omitempty"`
To time.Time `json:"to,omitempty"`
}
type VehicleSearchV3Criteria struct {
Vin []string `json:"vin"`
Model []int `json:"model"`
Fuel []int `json:"fuel"`
Transmission []int `json:"transmission"`
Engine []int `json:"engine"`
Line []string `json:"line"`
MappedLine []int `json:"mappedLine"`
CommissionNumber []string `json:"commissionNumber"`
VehicleType string `json:"vehicleType"`
Exclusion CampaignExclusion `json:"exclusion"`
RegNo string `json:"regNo"`
IncludeOffline bool `json:"includeOffline,omitempty"`
RegistrationDate RegistrationDate `json:"registrationDate"`
Age Age `json:"age"`
PortArrivalDate PortArrivalDate `json:"portArrivalDate"`
IsAvailableOnline *bool `json:"isAvailableOnline,omitempty"`
IsBackOrdered *bool `json:"isBackOrdered,omitempty"`
IsSellable *bool `json:"isSellable,omitempty"`
IsUnderOffer *bool `json:"isUnderOffer,omitempty"`
MbukSecured *bool `json:"mbukSecured,omitempty"`
Account []string `json:"account"`
Baumuster []string `json:"baumuster"`
Colours []int `json:"colours"`
Upholstery []int `json:"upholstery"`
Package []int `json:"package"`
Nst []string `json:"nst"`
UsageCode []string `json:"usageCode"`
}
type StockManagementRequest struct {
Sort Sort `json:"sort"`
Paging Paging `json:"paging"`
Criteria VehicleSearchV3Criteria `json:"criteria"`
}
Go StockManagementRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
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: text/csv
Content-Type: text/csv
Content-Length: length
{"sort":{"id":0},"paging":{"resultsPerPage":0,"pageIndex":0},"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"]}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"totalVehicles":0}