Mercedes.Agency.Orchestration.API

<back to all web services

FiltersRequest

Filters
Requires Authentication
The following routes are available for this service:
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 .other suffix or ?format=other

HTTP + OTHER

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/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
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"}]}}