Mercedes.Agency.Orchestration.API

<back to all web services

GetMotabilityPricingRequest

Motability
Requires Authentication
The following routes are available for this service:
POST/v1/motability/pricingGets the motability pricing information for the current user roleGets the motability pricing information for the current user role
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Mercedes.Agency.Orchestration.API.ServiceModel.Motability.Requests;
using Mercedes.Agency.API.Shared.POCO.Motability.Responses;
using Mercedes.Agency.API.Shared.POCO.Motability;
using Mercedes.Agency.API.Shared.Enums;

namespace Mercedes.Agency.API.Shared.Enums
{
    public enum MotabilityPricingStatus
    {
        Pending,
        Current,
        RecentlyExpired,
        Expired,
    }

}

namespace Mercedes.Agency.API.Shared.POCO.Motability
{
    public partial class MotabilityPricing
        : MotabilityPricingCsv
    {
        public virtual MotabilityPricingStatus MotabilityPricingStatus { get; set; }
    }

    public partial class MotabilityPricingCsv
    {
        [DataMember(Order=0)]
        public virtual int Id { get; set; }

        [DataMember(Order=1)]
        public virtual string CriteriaBM7NST { get; set; }

        [DataMember(Order=2)]
        public virtual string VTN { get; set; }

        [DataMember(Order=3)]
        public virtual string BackOrderDropDown { get; set; }

        [DataMember(Order=4)]
        public virtual string CriteriaFullModelYearCode { get; set; }

        [DataMember(Order=5)]
        public virtual string CriteriaValidOptionCodes { get; set; }

        [DataMember(Order=6)]
        public virtual string CriteriaInvalidOptionCodes { get; set; }

        [DataMember(Order=7)]
        public virtual decimal PIPNet { get; set; }

        [DataMember(Order=8)]
        public virtual decimal PIPVat { get; set; }

        [DataMember(Order=9)]
        public virtual decimal PIPGross { get; set; }

        [DataMember(Order=10)]
        public virtual decimal WPMSNet { get; set; }

        [DataMember(Order=11)]
        public virtual decimal WPMSVat { get; set; }

        [DataMember(Order=12)]
        public virtual decimal WPMSGross { get; set; }

        [DataMember(Order=13)]
        public virtual decimal DiscountNet { get; set; }

        [DataMember(Order=14)]
        public virtual decimal DiscountVat { get; set; }

        [DataMember(Order=15)]
        public virtual decimal DiscountGross { get; set; }

        [DataMember(Order=16)]
        public virtual decimal ListPriceNet { get; set; }

        [DataMember(Order=17)]
        public virtual decimal ListPriceVat { get; set; }

        [DataMember(Order=18)]
        public virtual decimal ListPriceGross { get; set; }

        [DataMember(Order=19)]
        public virtual decimal DeliveryChargeNet { get; set; }

        [DataMember(Order=20)]
        public virtual decimal DeliveryChargeVat { get; set; }

        [DataMember(Order=21)]
        public virtual decimal DeliveryChargeGross { get; set; }

        [DataMember(Order=22)]
        public virtual decimal FuelChargeNet { get; set; }

        [DataMember(Order=23)]
        public virtual decimal FuelChargeVat { get; set; }

        [DataMember(Order=24)]
        public virtual decimal FuelChargeGross { get; set; }

        [DataMember(Order=25)]
        public virtual decimal NumberPlateFeeNet { get; set; }

        [DataMember(Order=26)]
        public virtual decimal NumberPlateFeeVat { get; set; }

        [DataMember(Order=27)]
        public virtual decimal NumberPlateFeeGross { get; set; }

        [DataMember(Order=28)]
        public virtual decimal FirstRegistrationFeeNet { get; set; }

        [DataMember(Order=29)]
        public virtual decimal FirstRegistrationFeeVat { get; set; }

        [DataMember(Order=30)]
        public virtual decimal FirstRegistrationFeeGross { get; set; }

        [DataMember(Order=31)]
        public virtual decimal RoadFundLicenceNet { get; set; }

        [DataMember(Order=32)]
        public virtual decimal RoadFundLicenceVat { get; set; }

        [DataMember(Order=33)]
        public virtual decimal RoadFundLicenceGross { get; set; }

        [DataMember(Order=34)]
        public virtual DateTime ValidFrom { get; set; }

        [DataMember(Order=35)]
        public virtual DateTime ValidTo { get; set; }
    }

}

namespace Mercedes.Agency.API.Shared.POCO.Motability.Responses
{
    public partial class GetMotabilityPricingResponse
    {
        public virtual List<MotabilityPricing> MotabilityPricing { get; set; } = [];
    }

}

namespace Mercedes.Agency.Orchestration.API.ServiceModel.Motability.Requests
{
    public partial class GetMotabilityPricingRequest
    {
    }

}

C# GetMotabilityPricingRequest 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.

POST /v1/motability/pricing HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{Unable to show example output for type 'GetMotabilityPricingResponse' using the custom 'csv' filter}Cannot dynamically create an instance of type 'Mercedes.Agency.API.Shared.POCO.Motability.Responses.GetMotabilityPricingResponse'. Reason: No parameterless constructor defined.