Mercedes.Agency.Orchestration.API

<back to all web services

GetPricingDetailsRequest

Pricing
The following routes are available for this service:
POST/v1/pricingdetailsCreates a detailed pricing of a vehicle
"use strict";
/** @typedef {number} */
export var Source;
(function (Source) {
    Source[Source["OnlineShowroom"] = 1] = "OnlineShowroom"
    Source[Source["OneAdmin"] = 2] = "OneAdmin"
})(Source || (Source = {}));
export class Address {
    /** @param {{Property?:string,Street?:string,Town?:string,County?:string,Locality?:string,Postcode?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Property;
    /** @type {string} */
    Street;
    /** @type {string} */
    Town;
    /** @type {string} */
    County;
    /** @type {string} */
    Locality;
    /** @type {string} */
    Postcode;
}
/** @typedef {number} */
export var CustomerMode;
(function (CustomerMode) {
    CustomerMode[CustomerMode["Private"] = 1] = "Private"
    CustomerMode[CustomerMode["Business"] = 2] = "Business"
    CustomerMode[CustomerMode["Motability"] = 3] = "Motability"
})(CustomerMode || (CustomerMode = {}));
export class SalesforceCustomer {
    /** @param {{CustomerId?:string,IsCiam?:boolean,CompanyName?:string,Title?:string,Firstname?:string,Surname?:string,EmailAddress?:string,Telephone?:string,Address?:Address,Mode?:CustomerMode}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    CustomerId;
    /** @type {boolean} */
    IsCiam;
    /** @type {string} */
    CompanyName;
    /** @type {string} */
    Title;
    /** @type {string} */
    Firstname;
    /** @type {string} */
    Surname;
    /** @type {string} */
    EmailAddress;
    /** @type {string} */
    Telephone;
    /** @type {Address} */
    Address;
    /** @type {CustomerMode} */
    Mode;
}
export class Preferences {
    /** @param {{OptinEmail?:boolean,OptinPost?:boolean,OptinSMS?:boolean,OptinTelephone?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {boolean} */
    OptinEmail;
    /** @type {boolean} */
    OptinPost;
    /** @type {boolean} */
    OptinSMS;
    /** @type {boolean} */
    OptinTelephone;
}
export class Customer extends SalesforceCustomer {
    /** @param {{ProfileId?:string,Preferences?:Preferences,CustomerId?:string,IsCiam?:boolean,CompanyName?:string,Title?:string,Firstname?:string,Surname?:string,EmailAddress?:string,Telephone?:string,Address?:Address,Mode?:CustomerMode}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
    /** @type {?string} */
    ProfileId;
    /** @type {?Preferences} */
    Preferences;
}
export class Vehicle {
    /** @param {{Vin?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {?string} */
    Vin;
}
export class Option {
    /** @param {{IsDefault?:boolean,Value?:number}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {boolean} */
    IsDefault;
    /** @type {number} */
    Value;
}
export class Term {
    /** @param {{Options?:Option[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Option[]} */
    Options = [];
}
export class Deposit {
    /** @param {{Default?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Default;
}
export class Mileage {
    /** @param {{Options?:Option[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Option[]} */
    Options = [];
}
export class AdvanceRentals {
    /** @param {{Options?:Option[]}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Option[]} */
    Options = [];
}
/** @typedef {'UNASSIGNED'|'NEW'|'USED'} */
export var VehicleType;
(function (VehicleType) {
    VehicleType["UNASSIGNED"] = "UNASSIGNED"
    VehicleType["NEW"] = "NEW"
    VehicleType["USED"] = "USED"
})(VehicleType || (VehicleType = {}));
export class FinanceCriteria {
    /** @param {{Key?:string,Name?:string,Type?:string,IsDefault?:boolean,Term?:Term,Deposit?:Deposit,Mileage?:Mileage,AdvanceRentals?:AdvanceRentals,IsPersonalised?:boolean,RegularPayment?:string,PartExchange?:string,Settlement?:string,CustomerType?:string,VehicleType?:VehicleType}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Key;
    /** @type {string} */
    Name;
    /** @type {string} */
    Type;
    /** @type {boolean} */
    IsDefault;
    /** @type {Term} */
    Term;
    /** @type {Deposit} */
    Deposit;
    /** @type {Mileage} */
    Mileage;
    /** @type {AdvanceRentals} */
    AdvanceRentals;
    /** @type {boolean} */
    IsPersonalised;
    /** @type {string} */
    RegularPayment;
    /** @type {string} */
    PartExchange;
    /** @type {string} */
    Settlement;
    /** @type {string} */
    CustomerType;
    /** @type {VehicleType} */
    VehicleType;
}
export class OutrightPurchase {
    /** @param {{IsOutrightPurchase?:boolean,Reference?:string,DiscountRate?:number,Bm7NST?:string,IsBackOrder?:boolean,IsCOPConverter?:boolean}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {boolean} */
    IsOutrightPurchase;
    /** @type {string} */
    Reference;
    /** @type {number} */
    DiscountRate;
    /** @type {string} */
    Bm7NST;
    /** @type {boolean} */
    IsBackOrder;
    /** @type {boolean} */
    IsCOPConverter;
}
/** @typedef {number} */
export var MotabilityType;
(function (MotabilityType) {
    MotabilityType[MotabilityType["PIP"] = 1] = "PIP"
    MotabilityType[MotabilityType["WPMS"] = 2] = "WPMS"
    MotabilityType[MotabilityType["UNASSIGNED"] = 3] = "UNASSIGNED"
})(MotabilityType || (MotabilityType = {}));
export class CreateOrderBase {
    /** @param {{Source?:Source,GssnId?:string,AdditionalInformation?:string,Cash?:boolean,Finance?:boolean,Customer?:Customer,Vehicle?:Vehicle,FinanceCriteria?:FinanceCriteria,BackOrderGuid?:string,TagUrl?:string,OutrightPurchase?:OutrightPurchase,Motability?:boolean,MotabilityPricingId?:number,FinanceApplicationReference?:string,Specialist?:boolean,GasId?:string,PersonalisedItemOfferIds?:number[],SuggestedVin?:string,NonOptimumReason?:string,MotabilityType?:MotabilityType,EstimatedHandoverDate?:string}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Source} */
    Source;
    /** @type {string} */
    GssnId;
    /** @type {string} */
    AdditionalInformation;
    /** @type {boolean} */
    Cash;
    /** @type {boolean} */
    Finance;
    /** @type {Customer} */
    Customer;
    /** @type {Vehicle} */
    Vehicle;
    /** @type {FinanceCriteria} */
    FinanceCriteria;
    /** @type {?string} */
    BackOrderGuid;
    /** @type {?string} */
    TagUrl;
    /** @type {?OutrightPurchase} */
    OutrightPurchase;
    /** @type {boolean} */
    Motability;
    /** @type {?number} */
    MotabilityPricingId;
    /** @type {string} */
    FinanceApplicationReference;
    /** @type {boolean} */
    Specialist;
    /** @type {string} */
    GasId;
    /** @type {?number[]} */
    PersonalisedItemOfferIds;
    /** @type {?string} */
    SuggestedVin;
    /** @type {?string} */
    NonOptimumReason;
    /** @type {MotabilityType} */
    MotabilityType;
    /** @type {string} */
    EstimatedHandoverDate;
}
/** @typedef {'LIST_PRICE'|'NUMBER_PLATE_FEE'|'DELIVERY_CHARGE'|'FUEL_CHARGE'|'MANUFACTURER_OFFER'|'PERSONALISED_MONEYOFFER'|'PERSONALISED_NONMONEYOFFER'|'PERSONALISED_NONMONEYOFFER_NEG'|'SERVICE'|'SERVICE_NEG'|'GOVERNMENT_GRANT'|'OUTRIGHT_PURCHASE_DISCOUNT'|'VIP_OFFER'|'WALLBOX_OFFER'|'WALLBOX_OFFER_NEG'|'ROAD_FUND_LICENCE'|'FIRST_REGISTRATION_FEE'|'NOT_FOUND'|'ACCESSORY_OFFER'|'ACCESSORY_OFFER_NEG'|'MOTABILITY_DISCOUNT'} */
export var OfferPriceProductType;
(function (OfferPriceProductType) {
    OfferPriceProductType["LIST_PRICE"] = "LIST_PRICE"
    OfferPriceProductType["NUMBER_PLATE_FEE"] = "NUMBER_PLATE_FEE"
    OfferPriceProductType["DELIVERY_CHARGE"] = "DELIVERY_CHARGE"
    OfferPriceProductType["FUEL_CHARGE"] = "FUEL_CHARGE"
    OfferPriceProductType["MANUFACTURER_OFFER"] = "MANUFACTURER_OFFER"
    OfferPriceProductType["PERSONALISED_MONEYOFFER"] = "PERSONALISED_MONEYOFFER"
    OfferPriceProductType["PERSONALISED_NONMONEYOFFER"] = "PERSONALISED_NONMONEYOFFER"
    OfferPriceProductType["PERSONALISED_NONMONEYOFFER_NEG"] = "PERSONALISED_NONMONEYOFFER_NEG"
    OfferPriceProductType["SERVICE"] = "SERVICE"
    OfferPriceProductType["SERVICE_NEG"] = "SERVICE_NEG"
    OfferPriceProductType["GOVERNMENT_GRANT"] = "GOVERNMENT_GRANT"
    OfferPriceProductType["OUTRIGHT_PURCHASE_DISCOUNT"] = "OUTRIGHT_PURCHASE_DISCOUNT"
    OfferPriceProductType["VIP_OFFER"] = "VIP_OFFER"
    OfferPriceProductType["WALLBOX_OFFER"] = "WALLBOX_OFFER"
    OfferPriceProductType["WALLBOX_OFFER_NEG"] = "WALLBOX_OFFER_NEG"
    OfferPriceProductType["ROAD_FUND_LICENCE"] = "ROAD_FUND_LICENCE"
    OfferPriceProductType["FIRST_REGISTRATION_FEE"] = "FIRST_REGISTRATION_FEE"
    OfferPriceProductType["NOT_FOUND"] = "NOT_FOUND"
    OfferPriceProductType["ACCESSORY_OFFER"] = "ACCESSORY_OFFER"
    OfferPriceProductType["ACCESSORY_OFFER_NEG"] = "ACCESSORY_OFFER_NEG"
    OfferPriceProductType["MOTABILITY_DISCOUNT"] = "MOTABILITY_DISCOUNT"
})(OfferPriceProductType || (OfferPriceProductType = {}));
export class Price {
    /** @param {{Id?:string,Description?:string,Net?:number,VAT?:number,Gross?:number,Product?:OfferPriceProductType}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {string} */
    Id;
    /** @type {string} */
    Description;
    /** @type {number} */
    Net;
    /** @type {number} */
    VAT;
    /** @type {number} */
    Gross;
    /** @type {OfferPriceProductType} */
    Product;
}
export class GetPricingDetailsResponse {
    /** @param {{Price?:Price}} [init] */
    constructor(init) { Object.assign(this, init) }
    /** @type {Price} */
    Price;
}
export class GetPricingDetailsRequest extends CreateOrderBase {
    /** @param {{Source?:Source,GssnId?:string,AdditionalInformation?:string,Cash?:boolean,Finance?:boolean,Customer?:Customer,Vehicle?:Vehicle,FinanceCriteria?:FinanceCriteria,BackOrderGuid?:string,TagUrl?:string,OutrightPurchase?:OutrightPurchase,Motability?:boolean,MotabilityPricingId?:number,FinanceApplicationReference?:string,Specialist?:boolean,GasId?:string,PersonalisedItemOfferIds?:number[],SuggestedVin?:string,NonOptimumReason?:string,MotabilityType?:MotabilityType,EstimatedHandoverDate?:string}} [init] */
    constructor(init) { super(init); Object.assign(this, init) }
}

JavaScript GetPricingDetailsRequest DTOs

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

HTTP + XML

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

POST /v1/pricingdetails HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<GetPricingDetailsRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.ServiceModel.Pricing">
  <AdditionalInformation xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</AdditionalInformation>
  <BackOrderGuid xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">00000000-0000-0000-0000-000000000000</BackOrderGuid>
  <Cash xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">false</Cash>
  <Customer xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">
    <d2p1:Address>
      <d2p1:County>String</d2p1:County>
      <d2p1:Locality>String</d2p1:Locality>
      <d2p1:Postcode>String</d2p1:Postcode>
      <d2p1:Property>String</d2p1:Property>
      <d2p1:Street>String</d2p1:Street>
      <d2p1:Town>String</d2p1:Town>
    </d2p1:Address>
    <d2p1:CompanyName>String</d2p1:CompanyName>
    <d2p1:CustomerId>String</d2p1:CustomerId>
    <d2p1:EmailAddress>String</d2p1:EmailAddress>
    <d2p1:Firstname>String</d2p1:Firstname>
    <d2p1:IsCiam>false</d2p1:IsCiam>
    <d2p1:Mode>Private</d2p1:Mode>
    <d2p1:Surname>String</d2p1:Surname>
    <d2p1:Telephone>String</d2p1:Telephone>
    <d2p1:Title>String</d2p1:Title>
    <d2p1:Preferences>
      <d2p1:OptinEmail>false</d2p1:OptinEmail>
      <d2p1:OptinPost>false</d2p1:OptinPost>
      <d2p1:OptinSMS>false</d2p1:OptinSMS>
      <d2p1:OptinTelephone>false</d2p1:OptinTelephone>
    </d2p1:Preferences>
    <d2p1:ProfileId>00000000-0000-0000-0000-000000000000</d2p1:ProfileId>
  </Customer>
  <EstimatedHandoverDate xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</EstimatedHandoverDate>
  <Finance xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">false</Finance>
  <FinanceApplicationReference xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</FinanceApplicationReference>
  <FinanceCriteria xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">
    <d2p1:AdvanceRentals>
      <d2p1:Options>
        <d2p1:Option>
          <d2p1:IsDefault>false</d2p1:IsDefault>
          <d2p1:Value>0</d2p1:Value>
        </d2p1:Option>
      </d2p1:Options>
    </d2p1:AdvanceRentals>
    <d2p1:CustomerType>String</d2p1:CustomerType>
    <d2p1:Deposit>
      <d2p1:Default>String</d2p1:Default>
    </d2p1:Deposit>
    <d2p1:IsDefault>false</d2p1:IsDefault>
    <d2p1:IsPersonalised>false</d2p1:IsPersonalised>
    <d2p1:Key>String</d2p1:Key>
    <d2p1:Mileage>
      <d2p1:Options>
        <d2p1:Option>
          <d2p1:IsDefault>false</d2p1:IsDefault>
          <d2p1:Value>0</d2p1:Value>
        </d2p1:Option>
      </d2p1:Options>
    </d2p1:Mileage>
    <d2p1:Name>String</d2p1:Name>
    <d2p1:PartExchange>String</d2p1:PartExchange>
    <d2p1:RegularPayment>String</d2p1:RegularPayment>
    <d2p1:Settlement>String</d2p1:Settlement>
    <d2p1:Term>
      <d2p1:Options>
        <d2p1:Option>
          <d2p1:IsDefault>false</d2p1:IsDefault>
          <d2p1:Value>0</d2p1:Value>
        </d2p1:Option>
      </d2p1:Options>
    </d2p1:Term>
    <d2p1:Type>String</d2p1:Type>
    <d2p1:VehicleType>UNASSIGNED</d2p1:VehicleType>
  </FinanceCriteria>
  <GasId xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</GasId>
  <GssnId xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</GssnId>
  <Motability xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">false</Motability>
  <MotabilityPricingId xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">0</MotabilityPricingId>
  <MotabilityType xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">PIP</MotabilityType>
  <NonOptimumReason xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</NonOptimumReason>
  <OutrightPurchase xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">
    <d2p1:Bm7NST>String</d2p1:Bm7NST>
    <d2p1:DiscountRate>0</d2p1:DiscountRate>
    <d2p1:IsBackOrder>false</d2p1:IsBackOrder>
    <d2p1:IsCOPConverter>false</d2p1:IsCOPConverter>
    <d2p1:IsOutrightPurchase>false</d2p1:IsOutrightPurchase>
    <d2p1:Reference>String</d2p1:Reference>
  </OutrightPurchase>
  <PersonalisedItemOfferIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">
    <d2p1:int>0</d2p1:int>
  </PersonalisedItemOfferIds>
  <Source xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">OnlineShowroom</Source>
  <Specialist xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">false</Specialist>
  <SuggestedVin xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</SuggestedVin>
  <TagUrl xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">String</TagUrl>
  <Vehicle xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco">
    <d2p1:Vin>String</d2p1:Vin>
  </Vehicle>
</GetPricingDetailsRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<GetPricingDetailsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Clients.AgencyApi.Responses">
  <Price xmlns:d2p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO">
    <d2p1:Description>String</d2p1:Description>
    <d2p1:Gross>0</d2p1:Gross>
    <d2p1:Id>String</d2p1:Id>
    <d2p1:Net>0</d2p1:Net>
    <d2p1:Product>LIST_PRICE</d2p1:Product>
    <d2p1:VAT>0</d2p1:VAT>
  </Price>
</GetPricingDetailsResponse>