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
const std = @import("std");

pub const GetMotabilityPricingRequest = struct {};

pub const MotabilityPricingCsv = struct {
    // @DataMember(Order=0)
    id: i32 = 0,

    // @DataMember(Order=1)
    criteria_b_m7_n_s_t: ?[]const u8 = null,

    // @DataMember(Order=2)
    vtn: ?[]const u8 = null,

    // @DataMember(Order=3)
    back_order_drop_down: ?[]const u8 = null,

    // @DataMember(Order=4)
    criteria_full_model_year_code: ?[]const u8 = null,

    // @DataMember(Order=5)
    criteria_valid_option_codes: ?[]const u8 = null,

    // @DataMember(Order=6)
    criteria_invalid_option_codes: ?[]const u8 = null,

    // @DataMember(Order=7)
    pip_net: f64 = 0,

    // @DataMember(Order=8)
    pip_vat: f64 = 0,

    // @DataMember(Order=9)
    pip_gross: f64 = 0,

    // @DataMember(Order=10)
    wpms_net: f64 = 0,

    // @DataMember(Order=11)
    wpms_vat: f64 = 0,

    // @DataMember(Order=12)
    wpms_gross: f64 = 0,

    // @DataMember(Order=13)
    discount_net: f64 = 0,

    // @DataMember(Order=14)
    discount_vat: f64 = 0,

    // @DataMember(Order=15)
    discount_gross: f64 = 0,

    // @DataMember(Order=16)
    list_price_net: f64 = 0,

    // @DataMember(Order=17)
    list_price_vat: f64 = 0,

    // @DataMember(Order=18)
    list_price_gross: f64 = 0,

    // @DataMember(Order=19)
    delivery_charge_net: f64 = 0,

    // @DataMember(Order=20)
    delivery_charge_vat: f64 = 0,

    // @DataMember(Order=21)
    delivery_charge_gross: f64 = 0,

    // @DataMember(Order=22)
    fuel_charge_net: f64 = 0,

    // @DataMember(Order=23)
    fuel_charge_vat: f64 = 0,

    // @DataMember(Order=24)
    fuel_charge_gross: f64 = 0,

    // @DataMember(Order=25)
    number_plate_fee_net: f64 = 0,

    // @DataMember(Order=26)
    number_plate_fee_vat: f64 = 0,

    // @DataMember(Order=27)
    number_plate_fee_gross: f64 = 0,

    // @DataMember(Order=28)
    first_registration_fee_net: f64 = 0,

    // @DataMember(Order=29)
    first_registration_fee_vat: f64 = 0,

    // @DataMember(Order=30)
    first_registration_fee_gross: f64 = 0,

    // @DataMember(Order=31)
    road_fund_licence_net: f64 = 0,

    // @DataMember(Order=32)
    road_fund_licence_vat: f64 = 0,

    // @DataMember(Order=33)
    road_fund_licence_gross: f64 = 0,

    // @DataMember(Order=34)
    valid_from: ?[]const u8 = null,

    // @DataMember(Order=35)
    valid_to: ?[]const u8 = null,

    // @DataMember(Order=36)
    government_grant_net: f64 = 0,

    // @DataMember(Order=37)
    government_grant_vat: f64 = 0,

    // @DataMember(Order=38)
    government_grant_gross: f64 = 0,
};

pub const MotabilityPricingStatus = enum {
    Pending,
    Current,
    RecentlyExpired,
    Expired,
};

pub const MotabilityPricing = struct {
    // @DataMember(Order=0)
    id: i32 = 0,

    // @DataMember(Order=1)
    criteria_b_m7_n_s_t: ?[]const u8 = null,

    // @DataMember(Order=2)
    vtn: ?[]const u8 = null,

    // @DataMember(Order=3)
    back_order_drop_down: ?[]const u8 = null,

    // @DataMember(Order=4)
    criteria_full_model_year_code: ?[]const u8 = null,

    // @DataMember(Order=5)
    criteria_valid_option_codes: ?[]const u8 = null,

    // @DataMember(Order=6)
    criteria_invalid_option_codes: ?[]const u8 = null,

    // @DataMember(Order=7)
    pip_net: f64 = 0,

    // @DataMember(Order=8)
    pip_vat: f64 = 0,

    // @DataMember(Order=9)
    pip_gross: f64 = 0,

    // @DataMember(Order=10)
    wpms_net: f64 = 0,

    // @DataMember(Order=11)
    wpms_vat: f64 = 0,

    // @DataMember(Order=12)
    wpms_gross: f64 = 0,

    // @DataMember(Order=13)
    discount_net: f64 = 0,

    // @DataMember(Order=14)
    discount_vat: f64 = 0,

    // @DataMember(Order=15)
    discount_gross: f64 = 0,

    // @DataMember(Order=16)
    list_price_net: f64 = 0,

    // @DataMember(Order=17)
    list_price_vat: f64 = 0,

    // @DataMember(Order=18)
    list_price_gross: f64 = 0,

    // @DataMember(Order=19)
    delivery_charge_net: f64 = 0,

    // @DataMember(Order=20)
    delivery_charge_vat: f64 = 0,

    // @DataMember(Order=21)
    delivery_charge_gross: f64 = 0,

    // @DataMember(Order=22)
    fuel_charge_net: f64 = 0,

    // @DataMember(Order=23)
    fuel_charge_vat: f64 = 0,

    // @DataMember(Order=24)
    fuel_charge_gross: f64 = 0,

    // @DataMember(Order=25)
    number_plate_fee_net: f64 = 0,

    // @DataMember(Order=26)
    number_plate_fee_vat: f64 = 0,

    // @DataMember(Order=27)
    number_plate_fee_gross: f64 = 0,

    // @DataMember(Order=28)
    first_registration_fee_net: f64 = 0,

    // @DataMember(Order=29)
    first_registration_fee_vat: f64 = 0,

    // @DataMember(Order=30)
    first_registration_fee_gross: f64 = 0,

    // @DataMember(Order=31)
    road_fund_licence_net: f64 = 0,

    // @DataMember(Order=32)
    road_fund_licence_vat: f64 = 0,

    // @DataMember(Order=33)
    road_fund_licence_gross: f64 = 0,

    // @DataMember(Order=34)
    valid_from: ?[]const u8 = null,

    // @DataMember(Order=35)
    valid_to: ?[]const u8 = null,

    // @DataMember(Order=36)
    government_grant_net: f64 = 0,

    // @DataMember(Order=37)
    government_grant_vat: f64 = 0,

    // @DataMember(Order=38)
    government_grant_gross: f64 = 0,
    motability_pricing_status: ?MotabilityPricingStatus = null,
};

pub const GetMotabilityPricingResponse = struct {
    motability_pricing: []MotabilityPricing = &.{},
};

Zig 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

{"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":"\/Date(-62135596800000-0000)\/","ValidTo":"\/Date(-62135596800000-0000)\/","GovernmentGrantNet":0,"GovernmentGrantVat":0,"GovernmentGrantGross":0}]}