| GET | /v1/motability/pricing | Gets all motability pricing information | Gets all motability pricing information |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetAllMotabilityPricingRequest(IGet):
pass
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class MotabilityPricingCsv:
id: int = 0
criteria_b_m7_n_s_t: Optional[str] = None
vtn: Optional[str] = None
back_order_drop_down: Optional[str] = None
criteria_full_model_year_code: Optional[str] = None
criteria_valid_option_codes: Optional[str] = None
criteria_invalid_option_codes: Optional[str] = None
pip_net: Decimal = decimal.Decimal(0)
pip_vat: Decimal = decimal.Decimal(0)
pip_gross: Decimal = decimal.Decimal(0)
wpms_net: Decimal = decimal.Decimal(0)
wpms_vat: Decimal = decimal.Decimal(0)
wpms_gross: Decimal = decimal.Decimal(0)
discount_net: Decimal = decimal.Decimal(0)
discount_vat: Decimal = decimal.Decimal(0)
discount_gross: Decimal = decimal.Decimal(0)
list_price_net: Decimal = decimal.Decimal(0)
list_price_vat: Decimal = decimal.Decimal(0)
list_price_gross: Decimal = decimal.Decimal(0)
delivery_charge_net: Decimal = decimal.Decimal(0)
delivery_charge_vat: Decimal = decimal.Decimal(0)
delivery_charge_gross: Decimal = decimal.Decimal(0)
fuel_charge_net: Decimal = decimal.Decimal(0)
fuel_charge_vat: Decimal = decimal.Decimal(0)
fuel_charge_gross: Decimal = decimal.Decimal(0)
number_plate_fee_net: Decimal = decimal.Decimal(0)
number_plate_fee_vat: Decimal = decimal.Decimal(0)
number_plate_fee_gross: Decimal = decimal.Decimal(0)
first_registration_fee_net: Decimal = decimal.Decimal(0)
first_registration_fee_vat: Decimal = decimal.Decimal(0)
first_registration_fee_gross: Decimal = decimal.Decimal(0)
road_fund_licence_net: Decimal = decimal.Decimal(0)
road_fund_licence_vat: Decimal = decimal.Decimal(0)
road_fund_licence_gross: Decimal = decimal.Decimal(0)
valid_from: datetime.datetime = datetime.datetime(1, 1, 1)
valid_to: datetime.datetime = datetime.datetime(1, 1, 1)
government_grant_net: Decimal = decimal.Decimal(0)
government_grant_vat: Decimal = decimal.Decimal(0)
government_grant_gross: Decimal = decimal.Decimal(0)
class MotabilityPricingStatus(str, Enum):
PENDING = 'Pending'
CURRENT = 'Current'
RECENTLY_EXPIRED = 'RecentlyExpired'
EXPIRED = 'Expired'
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class MotabilityPricing(MotabilityPricingCsv):
motability_pricing_status: Optional[MotabilityPricingStatus] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetMotabilityPricingResponse:
motability_pricing: List[MotabilityPricing] = field(default_factory=list)
Python GetAllMotabilityPricingRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/motability/pricing 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
{
MotabilityPricing:
[
{
MotabilityPricingStatus: Pending,
Id: 0,
CriteriaBM7NST: String,
VTN: String,
BackOrderDropDown: String,
CriteriaFullModelYearCode: String,
CriteriaValidOptionCodes: String,
CriteriaInvalidOptionCodes: String,
PIPNet: 0,
PIPVat: 0,
PIPGross: 0,
WPMSNet: 0,
WPMSVat: 0,
WPMSGross: 0,
DiscountNet: 0,
DiscountVat: 0,
DiscountGross: 0,
ListPriceNet: 0,
ListPriceVat: 0,
ListPriceGross: 0,
DeliveryChargeNet: 0,
DeliveryChargeVat: 0,
DeliveryChargeGross: 0,
FuelChargeNet: 0,
FuelChargeVat: 0,
FuelChargeGross: 0,
NumberPlateFeeNet: 0,
NumberPlateFeeVat: 0,
NumberPlateFeeGross: 0,
FirstRegistrationFeeNet: 0,
FirstRegistrationFeeVat: 0,
FirstRegistrationFeeGross: 0,
RoadFundLicenceNet: 0,
RoadFundLicenceVat: 0,
RoadFundLicenceGross: 0,
ValidFrom: 0001-01-01,
ValidTo: 0001-01-01,
GovernmentGrantNet: 0,
GovernmentGrantVat: 0,
GovernmentGrantGross: 0
}
]
}