POST | /v1/motabilityinflightpricing | Motability Pricing Inflight Pricing for supplied Order Guids | This endpoint is used for fetch motability orders only for inflight pricing. The original request is being made on Agency API and a list of orders from database is passed to agency orch. This is to fetch addditional information such as the vehicles details e.g Prices and Offers data |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Mercedes.Agency.Orchestration.API.ServiceModel.InflightPricing
Imports Mercedes.Agency.API.Shared.POCO
Namespace Global
Namespace Mercedes.Agency.API.Shared.POCO
Public Partial Class InflightPricingOrder
Public Overridable Property Guid As Guid
Public Overridable Property Vin As String
Public Overridable Property AdvanceRentalPaymentType As Integer
Public Overridable Property Offer As List(Of OrderOffer) = New List(Of OrderOffer)
Public Overridable Property OutrightPurchase As OutrightPurchase
Public Overridable Property MotabilityAdvancePayment As MotabilityAdvancePayment
End Class
Public Partial Class InflightPricingOrderRequest
Public Overridable Property InvalidFormatGuids As List(Of String) = New List(Of String)
Public Overridable Property OrderNotFoundGuids As List(Of Guid) = New List(Of Guid)
Public Overridable Property InflightPricingOrders As List(Of InflightPricingOrder) = New List(Of InflightPricingOrder)
Public Overridable Property IsMotability As Boolean
End Class
Public Partial Class InflightPricingResponse
Public Overridable Property VehiclesInflightPrices As List(Of VehicleInflightPrice) = New List(Of VehicleInflightPrice)
End Class
Public Partial Class MotabilityAdvancePayment
Public Overridable Property AdvancePaymentRentalType As String
Public Overridable Property AdvancePaymentValueGross As Decimal
Public Overridable Property AdvancePaymentValueVAT As Decimal
Public Overridable Property AdvancePaymentValueNet As Decimal
End Class
Public Partial Class MotabilityInflightPricingOrderRequest
Inherits InflightPricingOrderRequest
Public Overridable Property OrderVehicleWithNoMotabilityDiscount As List(Of Guid) = New List(Of Guid)
End Class
Public Partial Class OrderOffer
Public Overridable Property Id As Integer
Public Overridable Property OfferTypeId As Integer
Public Overridable Property OfferTypeDescription As String
Public Overridable Property OfferId As String
Public Overridable Property OfferDescription As String
Public Overridable Property Net As Decimal
Public Overridable Property VAT As Decimal
Public Overridable Property Gross As Decimal
Public Overridable Property GovernmentGrant As Boolean
Public Overridable Property PromoCode As String
Public Overridable Property Expiry As String
Public Overridable Property AffectsPrice As Boolean
Public Overridable Property Product As Integer?
Public Overridable Property ParentId As String
Public Overridable Property CreationDate As Date
Public Overridable Property ProductTypeDescription As String
Public Overridable Property ProductTypeNegativeDescription As String
Public Overridable Property CertificateRequired As Boolean?
End Class
Public Partial Class OutrightPurchase
Public Overridable Property IsOutrightPurchase As Boolean
Public Overridable Property Reference As String
Public Overridable Property DiscountRate As Decimal
Public Overridable Property Bm7NST As String
Public Overridable Property IsBackOrder As Boolean
Public Overridable Property IsCOPConverter As Boolean
End Class
Public Partial Class SalesforceOffer
Public Overridable Property Id As String
Public Overridable Property Description As String
Public Overridable Property Net As Decimal
Public Overridable Property VAT As Decimal
Public Overridable Property Gross As Decimal
Public Overridable Property Expiry As String
Public Overridable Property Product As String
Public Overridable Property RequiresCertification As Boolean?
End Class
Public Partial Class SalesforceOffers
Public Overridable Property Personalised As List(Of SalesforceOffer) = New List(Of SalesforceOffer)
Public Overridable Property NonDiscretionary As List(Of SalesforceOffer) = New List(Of SalesforceOffer)
Public Overridable Property NonCampaign As List(Of SalesforceOffer) = New List(Of SalesforceOffer)
Public Overridable Property OutrightPurchaseDiscount As List(Of SalesforceOffer) = New List(Of SalesforceOffer)
Public Overridable Property MotabilityDiscount As List(Of SalesforceOffer) = New List(Of SalesforceOffer)
Public Overridable Property IntegratedProducts As List(Of SalesforceOffer) = New List(Of SalesforceOffer)
End Class
Public Partial Class SalesforceOutrightPurchase
Public Overridable Property IsOutrightPurchase As Boolean
Public Overridable Property Reference As String
Public Overridable Property DiscountPercentage As Decimal
Public Overridable Property ModelId As String
End Class
Public Partial Class SalesforcePrice
Public Overridable Property Id As String
Public Overridable Property Description As String
Public Overridable Property Net As Decimal
Public Overridable Property VAT As Decimal
Public Overridable Property Gross As Decimal
Public Overridable Property Product As String
End Class
Public Partial Class SalesforceTotalPrice
Public Overridable Property Net As Decimal
Public Overridable Property VAT As Decimal
Public Overridable Property Gross As Decimal
End Class
Public Partial Class VehicleInflightPrice
Public Overridable Property Guid As String
Public Overridable Property Status As String
Public Overridable Property Success As Boolean
Public Overridable Property Prices As List(Of SalesforcePrice) = New List(Of SalesforcePrice)
Public Overridable Property TotalOTRFees As SalesforceTotalPrice
Public Overridable Property TotalOTRPrice As SalesforceTotalPrice
Public Overridable Property TotalActualPrice As SalesforceTotalPrice
Public Overridable Property Offers As SalesforceOffers
Public Overridable Property OutrightPurchase As SalesforceOutrightPurchase
Public Overridable Property Motability As MotabilityAdvancePayment
End Class
End Namespace
Namespace Mercedes.Agency.Orchestration.API.ServiceModel.InflightPricing
<ApiResponse(Description:="In Flight pricing generated", StatusCode:=200)>
Public Partial Class MotabilityInflightPricingRequest
Inherits MotabilityInflightPricingOrderRequest
Implements IPost
End Class
End Namespace
End Namespace
VB.NET MotabilityInflightPricingRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/motabilityinflightpricing HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"OrderVehicleWithNoMotabilityDiscount":["00000000000000000000000000000000"],"InvalidFormatGuids":["String"],"OrderNotFoundGuids":["00000000000000000000000000000000"],"InflightPricingOrders":[{"Guid":"00000000000000000000000000000000","Vin":"String","AdvanceRentalPaymentType":0,"Offer":[{"Id":0,"OfferTypeId":0,"OfferTypeDescription":"String","OfferId":"String","OfferDescription":"String","Net":0,"VAT":0,"Gross":0,"GovernmentGrant":false,"PromoCode":"String","Expiry":"String","AffectsPrice":false,"Product":0,"ParentId":"String","CreationDate":"\/Date(-62135596800000-0000)\/","ProductTypeDescription":"String","ProductTypeNegativeDescription":"String","CertificateRequired":false}],"OutrightPurchase":{"IsOutrightPurchase":false,"Reference":"String","DiscountRate":0,"Bm7NST":"String","IsBackOrder":false,"IsCOPConverter":false},"MotabilityAdvancePayment":{"AdvancePaymentRentalType":"String","AdvancePaymentValueGross":0,"AdvancePaymentValueVAT":0,"AdvancePaymentValueNet":0}}],"IsMotability":false}
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"VehiclesInflightPrices":[{"Guid":"String","Status":"String","Success":false,"Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"String"}],"TotalOTRFees":{"Net":0,"VAT":0,"Gross":0},"TotalOTRPrice":{"Net":0,"VAT":0,"Gross":0},"TotalActualPrice":{"Net":0,"VAT":0,"Gross":0},"Offers":{"Personalised":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Expiry":"String","Product":"String","RequiresCertification":false}],"NonDiscretionary":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Expiry":"String","Product":"String","RequiresCertification":false}],"NonCampaign":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Expiry":"String","Product":"String","RequiresCertification":false}],"OutrightPurchaseDiscount":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Expiry":"String","Product":"String","RequiresCertification":false}],"MotabilityDiscount":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Expiry":"String","Product":"String","RequiresCertification":false}],"IntegratedProducts":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Expiry":"String","Product":"String","RequiresCertification":false}]},"OutrightPurchase":{"IsOutrightPurchase":false,"Reference":"String","DiscountPercentage":0,"ModelId":"String"},"Motability":{"AdvancePaymentRentalType":"String","AdvancePaymentValueGross":0,"AdvancePaymentValueVAT":0,"AdvancePaymentValueNet":0}}]}