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
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Mercedes.Agency.Orchestration.API.ServiceModel.Filters
Imports Mercedes.Agency.API.Shared.POCO.Filters
Imports Mercedes.OS.Vehicle.Shared.POCO.Filters.v2
Imports Mercedes.Agency.API.Shared.POCO

Namespace Global

    Namespace Mercedes.Agency.API.Shared.POCO

        Public Partial Class Retailer
            Public Overridable Property Id As Integer
            Public Overridable Property GssnId As String
            Public Overridable Property Description As String
            Public Overridable Property Street As String
            Public Overridable Property City As String
            Public Overridable Property Postcode As String
            Public Overridable Property GoogleMapPostcode As String
            Public Overridable Property Phone As String
            Public Overridable Property Fax As String
            Public Overridable Property Email As String
            Public Overridable Property Website As String
            Public Overridable Property RetailerGroupId As String
            Public Overridable Property RetailerGroupName As String
            Public Overridable Property IsOnline As Boolean
            Public Overridable Property IsNewCarRetailer As Boolean
            Public Overridable Property IsUsedCarRetailer As Boolean
            Public Overridable Property IsCentralRetailer As Boolean
            Public Overridable Property ChatEnabled As Boolean
            Public Overridable Property TradeInEnabled As Boolean
            Public Overridable Property smart As Boolean
            Public Overridable Property DisplayPhoneNumberNew As String
            Public Overridable Property DisplayPhoneNumberUsed As String
            Public Overridable Property Latitude As Decimal
            Public Overridable Property Longitude As Decimal
            Public Overridable Property smartDescription As String
            Public Overridable Property smartWebsite As String
            Public Overridable Property smartPhone As String
            Public Overridable Property LegacyId As String
            Public Overridable Property Agent As Boolean
            Public Overridable Property MarketAreaId As Integer
            Public Overridable Property DigitalLoungeParentGssnId As String
            Public Overridable Property SendLeadsToDigitalLoungeParent As Boolean
            Public Overridable Property OpeningTimes As RetailerOpeningTimes
        End Class

        Public Partial Class RetailerOpeningTime
            Public Overridable Property Day As String
            Public Overridable Property OpenFrom As String
            Public Overridable Property OpenTo As String
            Public Overridable Property Special As String
        End Class

        Public Partial Class RetailerOpeningTimes
            Public Overridable Property [New] As List(Of RetailerOpeningTime) = New List(Of RetailerOpeningTime)
            Public Overridable Property Used As List(Of RetailerOpeningTime) = New List(Of RetailerOpeningTime)
        End Class
    End Namespace

    Namespace Mercedes.Agency.API.Shared.POCO.Filters

        Public Partial Class AccountRetailer
            Public Overridable Property Name As String
            Public Overridable Property Gssn As String
            Public Overridable Property IsSmart As Boolean
        End Class

        Public Partial Class Filters
            Inherits Filters
            Public Overridable Property Fuels As List(Of Fuel) = New List(Of Fuel)
            Public Overridable Property Lines As List(Of Line) = New List(Of Line)
            Public Overridable Property Engines As List(Of Engine) = New List(Of Engine)
            Public Overridable Property Transmissions As List(Of Transmission) = New List(Of Transmission)
            Public Overridable Property Colours As List(Of Colour) = New List(Of Colour)
            Public Overridable Property Upholsteries As List(Of Upholstery) = New List(Of Upholstery)
            Public Overridable Property Packages As List(Of Package) = New List(Of Package)
            Public Overridable Property Brands As List(Of Brand) = New List(Of Brand)
            Public Overridable Property Equipment As List(Of String) = New List(Of String)
            Public Overridable Property Retailers As List(Of Retailer) = New List(Of Retailer)
            <DataMember(Name:="Retailers")>
            Public Overridable Property AccountRetailers As List(Of AccountRetailer) = New List(Of AccountRetailer)

            Public Overridable Property RetailerGroups As List(Of RetailerGroup) = New List(Of RetailerGroup)
            Public Overridable Property MarketAreas As List(Of MarketArea) = New List(Of MarketArea)
            Public Overridable Property CustomerLocations As List(Of LookupValue) = New List(Of LookupValue)
            Public Overridable Property AssistanceProviders As List(Of LookupValue) = New List(Of LookupValue)
            Public Overridable Property NonOptimalReasons As List(Of NonOptimalReason) = New List(Of NonOptimalReason)
        End Class

        Public Partial Class LookupValue
            Public Overridable Property Id As Integer?
            Public Overridable Property Label As String
        End Class
    End Namespace

    Namespace Mercedes.Agency.Orchestration.API.ServiceModel.Filters

        Public Partial Class FiltersRequest
            Implements IGet
            Public Overridable Property vehicleType As String
        End Class

        Public Partial Class FiltersResponse
            Public Overridable Property Filters As Filters
        End Class
    End Namespace

    Namespace Mercedes.OS.Vehicle.Shared.POCO.Filters.v2

        Public Partial Class BodyStyle
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
            Public Overridable Property Models As List(Of Model)
        End Class

        Public Partial Class Brand
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
            Public Overridable Property DisplayName As String
            Public Overridable Property BodyStyles As List(Of BodyStyle)
        End Class

        Public Partial Class Colour
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class DeliveryTime
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class Engine
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
            Public Overridable Property BrandId As Integer?
            Public Overridable Property Brand As String
            Public Overridable Property Badge As String
        End Class

        Public Partial Class Filters
            Public Overridable Property Brands As List(Of Brand) = New List(Of Brand)
            Public Overridable Property Fuels As List(Of Fuel) = New List(Of Fuel)
            Public Overridable Property Lines As List(Of Line) = New List(Of Line)
            Public Overridable Property Engines As List(Of Engine) = New List(Of Engine)
            Public Overridable Property BodyStyles As List(Of BodyStyle) = New List(Of BodyStyle)
            Public Overridable Property Models As List(Of Model) = New List(Of Model)
            Public Overridable Property Transmissions As List(Of Transmission) = New List(Of Transmission)
            Public Overridable Property ModelHierarchy As List(Of Brand) = New List(Of Brand)
            Public Overridable Property Retailers As List(Of Retailer) = New List(Of Retailer)
            Public Overridable Property AllLines As List(Of Line) = New List(Of Line)
            Public Overridable Property Colours As List(Of Colour) = New List(Of Colour)
            Public Overridable Property Upholsteries As List(Of Upholstery) = New List(Of Upholstery)
            Public Overridable Property Packages As List(Of Package) = New List(Of Package)
            Public Overridable Property DeliveryTime As List(Of DeliveryTime)
            Public Overridable Property RetailerGroups As List(Of RetailerGroup) = New List(Of RetailerGroup)
            Public Overridable Property MarketAreas As List(Of MarketArea) = New List(Of MarketArea)
            Public Overridable Property NonOptimalReasons As List(Of NonOptimalReason) = New List(Of NonOptimalReason)
        End Class

        Public Partial Class Fuel
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class Line
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class MarketArea
            Public Overridable Property Id As Integer
            Public Overridable Property MarketAreaName As String
            Public Overridable Property Description As String
            Public Overridable Property GssnIds As List(Of String)
        End Class

        Public Partial Class Model
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
            Public Overridable Property DisplayName As String
            Public Overridable Property ImageUrlSmall As String
            Public Overridable Property ImageUrlMedium As String
            Public Overridable Property ImageUrlLarge As String
            Public Overridable Property Specialist As Boolean
            Public Overridable Property Priority As Integer
            Public Overridable Property ExcludeFromOnlineShowroomFilters As Boolean?
        End Class

        Public Partial Class NonOptimalReason
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class Package
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class RetailerGroup
            Public Overridable Property Id As Integer
            Public Overridable Property RetailerGroupId As String
            Public Overridable Property Description As String
            Public Overridable Property RetailerGroupName As String
            Public Overridable Property GssnIds As List(Of String)
        End Class

        Public Partial Class Transmission
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class

        Public Partial Class Upholstery
            Public Overridable Property Id As Integer
            Public Overridable Property Description As String
        End Class
    End Namespace
End Namespace

VB.NET FiltersRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

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