GET | /v1/filters/{vehicletype} | Get filters by vehicle type |
---|
"use strict";
export class Model {
/** @param {{Id?:number,Description?:string,DisplayName?:string,ImageUrlSmall?:string,ImageUrlMedium?:string,ImageUrlLarge?:string,Specialist?:boolean,Priority?:number,ExcludeFromOnlineShowroomFilters?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
/** @type {?string} */
DisplayName;
/** @type {?string} */
ImageUrlSmall;
/** @type {?string} */
ImageUrlMedium;
/** @type {?string} */
ImageUrlLarge;
/** @type {boolean} */
Specialist;
/** @type {number} */
Priority;
/** @type {?boolean} */
ExcludeFromOnlineShowroomFilters;
}
export class BodyStyle {
/** @param {{Id?:number,Description?:string,Models?:Model[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
/** @type {?Model[]} */
Models;
}
export class Brand {
/** @param {{Id?:number,Description?:string,DisplayName?:string,BodyStyles?:BodyStyle[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
/** @type {?string} */
DisplayName;
/** @type {?BodyStyle[]} */
BodyStyles;
}
export class Fuel {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class Line {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class Engine {
/** @param {{Id?:number,Description?:string,BrandId?:number,Brand?:string,Badge?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
/** @type {?number} */
BrandId;
/** @type {?string} */
Brand;
/** @type {?string} */
Badge;
}
export class Transmission {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class RetailerOpeningTime {
/** @param {{Day?:string,OpenFrom?:string,OpenTo?:string,Special?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Day;
/** @type {string} */
OpenFrom;
/** @type {string} */
OpenTo;
/** @type {string} */
Special;
}
export class RetailerOpeningTimes {
/** @param {{New?:RetailerOpeningTime[],Used?:RetailerOpeningTime[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {RetailerOpeningTime[]} */
New = [];
/** @type {RetailerOpeningTime[]} */
Used = [];
}
export class Retailer {
/** @param {{Id?:number,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?:boolean,IsNewCarRetailer?:boolean,IsUsedCarRetailer?:boolean,IsCentralRetailer?:boolean,ChatEnabled?:boolean,TradeInEnabled?:boolean,smart?:boolean,DisplayPhoneNumberNew?:string,DisplayPhoneNumberUsed?:string,Latitude?:number,Longitude?:number,smartDescription?:string,smartWebsite?:string,smartPhone?:string,LegacyId?:string,Agent?:boolean,MarketAreaId?:number,DigitalLoungeParentGssnId?:string,SendLeadsToDigitalLoungeParent?:boolean,OpeningTimes?:RetailerOpeningTimes}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {string} */
GssnId;
/** @type {string} */
Description;
/** @type {string} */
Street;
/** @type {string} */
City;
/** @type {string} */
Postcode;
/** @type {string} */
GoogleMapPostcode;
/** @type {string} */
Phone;
/** @type {string} */
Fax;
/** @type {string} */
Email;
/** @type {string} */
Website;
/** @type {string} */
RetailerGroupId;
/** @type {string} */
RetailerGroupName;
/** @type {boolean} */
IsOnline;
/** @type {boolean} */
IsNewCarRetailer;
/** @type {boolean} */
IsUsedCarRetailer;
/** @type {boolean} */
IsCentralRetailer;
/** @type {boolean} */
ChatEnabled;
/** @type {boolean} */
TradeInEnabled;
/** @type {boolean} */
smart;
/** @type {string} */
DisplayPhoneNumberNew;
/** @type {string} */
DisplayPhoneNumberUsed;
/** @type {number} */
Latitude;
/** @type {number} */
Longitude;
/** @type {string} */
smartDescription;
/** @type {string} */
smartWebsite;
/** @type {string} */
smartPhone;
/** @type {string} */
LegacyId;
/** @type {boolean} */
Agent;
/** @type {number} */
MarketAreaId;
/** @type {?string} */
DigitalLoungeParentGssnId;
/** @type {boolean} */
SendLeadsToDigitalLoungeParent;
/** @type {?RetailerOpeningTimes} */
OpeningTimes;
}
export class Colour {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class Upholstery {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class Package {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class DeliveryTime {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class RetailerGroup {
/** @param {{Id?:number,RetailerGroupId?:string,Description?:string,RetailerGroupName?:string,GssnIds?:string[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
RetailerGroupId;
/** @type {string} */
Description;
/** @type {?string} */
RetailerGroupName;
/** @type {?string[]} */
GssnIds;
}
export class MarketArea {
/** @param {{Id?:number,MarketAreaName?:string,Description?:string,GssnIds?:string[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
MarketAreaName;
/** @type {string} */
Description;
/** @type {?string[]} */
GssnIds;
}
export class NonOptimalReason {
/** @param {{Id?:number,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {?string} */
Description;
}
export class AccountRetailer {
/** @param {{Name?:string,Gssn?:string,IsSmart?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?string} */
Name;
/** @type {?string} */
Gssn;
/** @type {boolean} */
IsSmart;
}
export class LookupValue {
/** @param {{Id?:number,Label?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?number} */
Id;
/** @type {string} */
Label;
}
export class Filters extends Filters {
/** @param {{Fuels?:Fuel[],Lines?:Line[],Engines?:Engine[],Transmissions?:Transmission[],Colours?:Colour[],Upholsteries?:Upholstery[],Packages?:Package[],Brands?:Brand[],Equipment?:string[],Retailers?:Retailer[],Retailers?:AccountRetailer[],RetailerGroups?:RetailerGroup[],MarketAreas?:MarketArea[],CustomerLocations?:LookupValue[],AssistanceProviders?:LookupValue[],NonOptimalReasons?:NonOptimalReason[],Brands?:Brand[],Fuels?:Fuel[],Lines?:Line[],Engines?:Engine[],BodyStyles?:BodyStyle[],Models?:Model[],Transmissions?:Transmission[],ModelHierarchy?:Brand[],Retailers?:Retailer[],AllLines?:Line[],Colours?:Colour[],Upholsteries?:Upholstery[],Packages?:Package[],DeliveryTime?:DeliveryTime[],RetailerGroups?:RetailerGroup[],MarketAreas?:MarketArea[],NonOptimalReasons?:NonOptimalReason[]}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {Fuel[]} */
Fuels = [];
/** @type {Line[]} */
Lines = [];
/** @type {Engine[]} */
Engines = [];
/** @type {Transmission[]} */
Transmissions = [];
/** @type {Colour[]} */
Colours = [];
/** @type {Upholstery[]} */
Upholsteries = [];
/** @type {Package[]} */
Packages = [];
/** @type {Brand[]} */
Brands = [];
/** @type {string[]} */
Equipment = [];
/** @type {Retailer[]} */
Retailers = [];
/** @type {AccountRetailer[]} */
Retailers = [];
/** @type {RetailerGroup[]} */
RetailerGroups = [];
/** @type {MarketArea[]} */
MarketAreas = [];
/** @type {LookupValue[]} */
CustomerLocations = [];
/** @type {LookupValue[]} */
AssistanceProviders = [];
/** @type {NonOptimalReason[]} */
NonOptimalReasons = [];
}
export class FiltersResponse {
/** @param {{Filters?:Filters}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {Filters} */
Filters;
}
export class FiltersRequest {
/** @param {{vehicleType?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
vehicleType;
}
export class Filters {
/** @param {{Brands?:Brand[],Fuels?:Fuel[],Lines?:Line[],Engines?:Engine[],BodyStyles?:BodyStyle[],Models?:Model[],Transmissions?:Transmission[],ModelHierarchy?:Brand[],Retailers?:Retailer[],AllLines?:Line[],Colours?:Colour[],Upholsteries?:Upholstery[],Packages?:Package[],DeliveryTime?:DeliveryTime[],RetailerGroups?:RetailerGroup[],MarketAreas?:MarketArea[],NonOptimalReasons?:NonOptimalReason[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {Brand[]} */
Brands = [];
/** @type {Fuel[]} */
Fuels = [];
/** @type {Line[]} */
Lines = [];
/** @type {Engine[]} */
Engines = [];
/** @type {BodyStyle[]} */
BodyStyles = [];
/** @type {Model[]} */
Models = [];
/** @type {Transmission[]} */
Transmissions = [];
/** @type {Brand[]} */
ModelHierarchy = [];
/** @type {Retailer[]} */
Retailers = [];
/** @type {Line[]} */
AllLines = [];
/** @type {Colour[]} */
Colours = [];
/** @type {Upholstery[]} */
Upholsteries = [];
/** @type {Package[]} */
Packages = [];
/** @type {?DeliveryTime[]} */
DeliveryTime;
/** @type {RetailerGroup[]} */
RetailerGroups = [];
/** @type {MarketArea[]} */
MarketAreas = [];
/** @type {NonOptimalReason[]} */
NonOptimalReasons = [];
}
JavaScript FiltersRequest 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.
GET /v1/filters/{vehicletype} HTTP/1.1 Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk Accept: text/csv
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Filters":{"Fuels":[{"Id":0,"Description":"String"}],"Lines":[{"Id":0,"Description":"String"}],"Engines":[{"Id":0,"Description":"String","BrandId":0,"Brand":"String","Badge":"String"}],"Transmissions":[{"Id":0,"Description":"String"}],"Colours":[{"Id":0,"Description":"String"}],"Upholsteries":[{"Id":0,"Description":"String"}],"Packages":[{"Id":0,"Description":"String"}],"Brands":[{"Id":0,"Description":"String","DisplayName":"String","BodyStyles":[{"Id":0,"Description":"String","Models":[{"Id":0,"Description":"String","DisplayName":"String","ImageUrlSmall":"String","ImageUrlMedium":"String","ImageUrlLarge":"String","Specialist":false,"Priority":0,"ExcludeFromOnlineShowroomFilters":false}]}]}],"Equipment":["String"],"Retailers":[{"Gssn":"String","Description":"String","CampaignExcluded":false}],"Retailers":[{"Name":"String","Gssn":"String","IsSmart":false}],"RetailerGroups":[{"Id":0,"RetailerGroupId":"String","Description":"String","RetailerGroupName":"String","GssnIds":["String"]}],"MarketAreas":[{"Id":0,"MarketAreaName":"String","Description":"String","GssnIds":["String"]}],"CustomerLocations":[{}],"AssistanceProviders":[{}],"NonOptimalReasons":[{"Id":0,"Description":"String"}],"BodyStyles":[{"Id":0,"Description":"String","Models":[{"Id":0,"Description":"String","DisplayName":"String","ImageUrlSmall":"String","ImageUrlMedium":"String","ImageUrlLarge":"String","Specialist":false,"Priority":0,"ExcludeFromOnlineShowroomFilters":false}]}],"Models":[{"Id":0,"Description":"String","DisplayName":"String","ImageUrlSmall":"String","ImageUrlMedium":"String","ImageUrlLarge":"String","Specialist":false,"Priority":0,"ExcludeFromOnlineShowroomFilters":false}],"ModelHierarchy":[{"Id":0,"Description":"String","DisplayName":"String","BodyStyles":[{"Id":0,"Description":"String","Models":[{"Id":0,"Description":"String","DisplayName":"String","ImageUrlSmall":"String","ImageUrlMedium":"String","ImageUrlLarge":"String","Specialist":false,"Priority":0,"ExcludeFromOnlineShowroomFilters":false}]}]}],"AllLines":[{"Id":0,"Description":"String"}],"DeliveryTime":[{"Id":0,"Description":"String"}]}}