Mercedes.VehicleManagement.API

<back to all web services

GetMotabilityVehicleFiltersRequest

Filter
Requires Authentication
The following routes are available for this service:
GET/v1/Vehicle/Filters/MotabilityGet Motability Stock Vehicle Filters
# frozen_string_literal: true
# encoding: utf-8


require 'json'
require 'servicestack'


class AgeFilter
    include ServiceStack::DTO

    # @return [Integer]
    attr_accessor :age_lower_bound
    # @return [Integer]
    attr_accessor :age_upper_bound
    # @return [String]
    attr_accessor :label

    def self.properties
        {
            age_lower_bound: { name: 'ageLowerBound' },
            age_upper_bound: { name: 'ageUpperBound' },
            label: { name: 'label' },
        }
    end

end

class VehicleFilters
    include ServiceStack::DTO

    # @return [IEnumerable]
    attr_accessor :age_filters
    # @return [AgeFilter]
    attr_accessor :age_range

    def self.properties
        {
            age_filters: { name: 'ageFilters', type: [AgeFilter] },
            age_range: { name: 'ageRange', type: AgeFilter },
        }
    end

end

class VehicleFiltersResponse
    include ServiceStack::DTO

    # @return [VehicleFilters]
    attr_accessor :vehicle_filters

    def self.properties
        {
            vehicle_filters: { name: 'vehicleFilters', type: VehicleFilters },
        }
    end

end

class GetMotabilityVehicleFiltersRequest
    include ServiceStack::DTO

    def response_type() = VehicleFiltersResponse
    def get_type_name() = 'GetMotabilityVehicleFiltersRequest'
end

Ruby GetMotabilityVehicleFiltersRequest DTOs

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

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/Vehicle/Filters/Motability HTTP/1.1 
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"vehicleFilters":{"ageRange":{"ageLowerBound":0,"ageUpperBound":0,"label":"String"}}}