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
namespace Mercedes.Agency.API.Shared.Enums

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type GetMotabilityPricingRequest() = 
        class end

    [<AllowNullLiteral>]
    type MotabilityPricingCsv() = 
        [<DataMember(Order=0)>]
        member val Id:Int32 = new Int32() with get,set

        [<DataMember(Order=1)>]
        member val CriteriaBM7NST:String = null with get,set

        [<DataMember(Order=2)>]
        member val VTN:String = null with get,set

        [<DataMember(Order=3)>]
        member val BackOrderDropDown:String = null with get,set

        [<DataMember(Order=4)>]
        member val CriteriaFullModelYearCode:String = null with get,set

        [<DataMember(Order=5)>]
        member val CriteriaValidOptionCodes:String = null with get,set

        [<DataMember(Order=6)>]
        member val CriteriaInvalidOptionCodes:String = null with get,set

        [<DataMember(Order=7)>]
        member val PIPNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=8)>]
        member val PIPVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=9)>]
        member val PIPGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=10)>]
        member val WPMSNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=11)>]
        member val WPMSVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=12)>]
        member val WPMSGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=13)>]
        member val DiscountNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=14)>]
        member val DiscountVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=15)>]
        member val DiscountGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=16)>]
        member val ListPriceNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=17)>]
        member val ListPriceVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=18)>]
        member val ListPriceGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=19)>]
        member val DeliveryChargeNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=20)>]
        member val DeliveryChargeVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=21)>]
        member val DeliveryChargeGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=22)>]
        member val FuelChargeNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=23)>]
        member val FuelChargeVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=24)>]
        member val FuelChargeGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=25)>]
        member val NumberPlateFeeNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=26)>]
        member val NumberPlateFeeVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=27)>]
        member val NumberPlateFeeGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=28)>]
        member val FirstRegistrationFeeNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=29)>]
        member val FirstRegistrationFeeVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=30)>]
        member val FirstRegistrationFeeGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=31)>]
        member val RoadFundLicenceNet:Decimal = new Decimal() with get,set

        [<DataMember(Order=32)>]
        member val RoadFundLicenceVat:Decimal = new Decimal() with get,set

        [<DataMember(Order=33)>]
        member val RoadFundLicenceGross:Decimal = new Decimal() with get,set

        [<DataMember(Order=34)>]
        member val ValidFrom:DateTime = new DateTime() with get,set

        [<DataMember(Order=35)>]
        member val ValidTo:DateTime = new DateTime() with get,set

    type MotabilityPricingStatus =
        | Pending = 0
        | Current = 1
        | RecentlyExpired = 2
        | Expired = 3

    [<AllowNullLiteral>]
    type MotabilityPricing() = 
        inherit MotabilityPricingCsv()
        member val MotabilityPricingStatus:MotabilityPricingStatus = new MotabilityPricingStatus() with get,set

    [<AllowNullLiteral>]
    type GetMotabilityPricingResponse() = 
        member val MotabilityPricing:ResizeArray<MotabilityPricing> = null with get,set

F# 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.