POST | /v1/oneAdmin/backorder | Creates a back order with vehicle criteria | Create Back Order (called from One Admin) It calls the v1/backorder in the Agency API, where the order is created The details of the back order are sent to OneAgent Validation checks are performed on the input request. |
---|
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 CreateBackOrderResponse() =
member val Guid:String = null with get,set
member val Reference:String = null with get,set
type Source =
| OnlineShowroom = 1
| OneAdmin = 2
[<AllowNullLiteral>]
type Address() =
member val Property:String = null with get,set
member val Street:String = null with get,set
member val Town:String = null with get,set
member val County:String = null with get,set
member val Locality:String = null with get,set
member val Postcode:String = null with get,set
type CustomerMode =
| Private = 1
| Business = 2
| Motability = 3
[<AllowNullLiteral>]
type SalesforceCustomer() =
member val CustomerId:String = null with get,set
member val IsCiam:Boolean = new Boolean() with get,set
member val CompanyName:String = null with get,set
member val Title:String = null with get,set
member val Firstname:String = null with get,set
member val Surname:String = null with get,set
member val EmailAddress:String = null with get,set
member val Telephone:String = null with get,set
member val Address:Address = null with get,set
member val Mode:CustomerMode = new CustomerMode() with get,set
[<AllowNullLiteral>]
type Preferences() =
member val OptinEmail:Boolean = new Boolean() with get,set
member val OptinPost:Boolean = new Boolean() with get,set
member val OptinSMS:Boolean = new Boolean() with get,set
member val OptinTelephone:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type Customer() =
inherit SalesforceCustomer()
member val ProfileId:Nullable<Guid> = new Nullable<Guid>() with get,set
member val Preferences:Preferences = null with get,set
[<AllowNullLiteral>]
type JsonVersion() =
member val Version:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type CriteriaModel() =
member val Description:String = null with get,set
member val Id:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type CriteriaDifference() =
member val Model:Boolean = new Boolean() with get,set
member val Transmission:Boolean = new Boolean() with get,set
member val Fuel:Boolean = new Boolean() with get,set
member val Upholstery:Boolean = new Boolean() with get,set
member val Equipment:Boolean = new Boolean() with get,set
member val Line:Boolean = new Boolean() with get,set
member val BodyStyle:Boolean = new Boolean() with get,set
member val ColourGroup:Boolean = new Boolean() with get,set
member val Packages:Boolean = new Boolean() with get,set
member val Engine:Boolean = new Boolean() with get,set
member val AdditionalInformation:Boolean = new Boolean() with get,set
member val UrlReferrer:Boolean = new Boolean() with get,set
member val PreferredDeliveryDate:Boolean = new Boolean() with get,set
member val IsSmart:Boolean = new Boolean() with get,set
member val IsSpecialised:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type CriteriaBase() =
inherit JsonVersion()
member val Transmission:String[] = null with get,set
member val Fuel:String[] = null with get,set
member val Upholstery:String[] = null with get,set
member val Equipment:String[] = null with get,set
member val Line:String[] = null with get,set
member val BodyStyle:String[] = null with get,set
member val ColourGroup:String[] = null with get,set
member val Packages:String[] = null with get,set
member val Model:ResizeArray<CriteriaModel> = null with get,set
member val UrlReferrer:String = null with get,set
member val PreferredDeliveryDate:String = null with get,set
[<ApiMember(ExcludeInSchema=true)>]
member val IsNewModel:Boolean = new Boolean() with get,set
[<ApiMember(ExcludeInSchema=true)>]
member val IsSmart:Boolean = new Boolean() with get,set
[<ApiMember(ExcludeInSchema=true)>]
member val IsSpecialised:Boolean = new Boolean() with get,set
[<ApiMember(ExcludeInSchema=true)>]
member val CriteriaDifference:CriteriaDifference = null with get,set
[<AllowNullLiteral>]
type Criteria() =
inherit CriteriaBase()
member val Engine:String[] = null with get,set
[<AllowNullLiteral>]
type V2EngineCriteria() =
member val Badge:String = null with get,set
member val Brand:String = null with get,set
[<AllowNullLiteral>]
type V2Criteria() =
inherit CriteriaBase()
member val Engine:ResizeArray<V2EngineCriteria> = null with get,set
[<AllowNullLiteral>]
type OutrightPurchase() =
member val IsOutrightPurchase:Boolean = new Boolean() with get,set
member val Reference:String = null with get,set
member val DiscountRate:Decimal = new Decimal() with get,set
member val Bm7NST:String = null with get,set
member val IsBackOrder:Boolean = new Boolean() with get,set
member val IsCOPConverter:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type CreateBackOrderBase() =
member val GssnId:String = null with get,set
member val AdditionalInformation:String = null with get,set
member val ConfigCode:String = null with get,set
member val Source:Source = new Source() with get,set
member val TagUrl:String = null with get,set
member val Customer:Customer = null with get,set
member val CustomerCriteria:Criteria = null with get,set
member val AgentCriteria:V2Criteria = null with get,set
member val OutrightPurchase:OutrightPurchase = null with get,set
member val GasId:String = null with get,set
member val Motability:Boolean = new Boolean() with get,set
member val MotabilityPricingId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val AssistanceProviderId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val AssistanceDetail:String = null with get,set
member val ConfiguratorCode:String = null with get,set
[<AllowNullLiteral>]
type CreateOneAdminBackOrderRequest() =
inherit CreateBackOrderBase()
interface IPost
F# CreateOneAdminBackOrderRequest 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.
POST /v1/oneAdmin/backorder HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
GssnId: String,
AdditionalInformation: String,
ConfigCode: String,
Source: OnlineShowroom,
TagUrl: String,
Customer:
{
ProfileId: 00000000000000000000000000000000,
Preferences:
{
OptinEmail: False,
OptinPost: False,
OptinSMS: False,
OptinTelephone: False
},
CustomerId: String,
IsCiam: False,
CompanyName: String,
Title: String,
Firstname: String,
Surname: String,
EmailAddress: String,
Telephone: String,
Address:
{
Property: String,
Street: String,
Town: String,
County: String,
Locality: String,
Postcode: String
},
Mode: Private
},
CustomerCriteria:
{
Engine:
[
String
],
Transmission:
[
String
],
Fuel:
[
String
],
Upholstery:
[
String
],
Equipment:
[
String
],
Line:
[
String
],
BodyStyle:
[
String
],
ColourGroup:
[
String
],
Packages:
[
String
],
Model:
[
{
Description: String,
Id: 0
}
],
UrlReferrer: String,
PreferredDeliveryDate: String,
IsNewModel: False,
IsSmart: False,
IsSpecialised: False,
CriteriaDifference:
{
Model: False,
Transmission: False,
Fuel: False,
Upholstery: False,
Equipment: False,
Line: False,
BodyStyle: False,
ColourGroup: False,
Packages: False,
Engine: False,
AdditionalInformation: False,
UrlReferrer: False,
PreferredDeliveryDate: False,
IsSmart: False,
IsSpecialised: False
},
Version: 0
},
AgentCriteria:
{
Engine:
[
{
Badge: String,
Brand: String
}
],
Transmission:
[
String
],
Fuel:
[
String
],
Upholstery:
[
String
],
Equipment:
[
String
],
Line:
[
String
],
BodyStyle:
[
String
],
ColourGroup:
[
String
],
Packages:
[
String
],
Model:
[
{
Description: String,
Id: 0
}
],
UrlReferrer: String,
PreferredDeliveryDate: String,
IsNewModel: False,
IsSmart: False,
IsSpecialised: False,
CriteriaDifference:
{
Model: False,
Transmission: False,
Fuel: False,
Upholstery: False,
Equipment: False,
Line: False,
BodyStyle: False,
ColourGroup: False,
Packages: False,
Engine: False,
AdditionalInformation: False,
UrlReferrer: False,
PreferredDeliveryDate: False,
IsSmart: False,
IsSpecialised: False
},
Version: 0
},
OutrightPurchase:
{
IsOutrightPurchase: False,
Reference: String,
DiscountRate: 0,
Bm7NST: String,
IsBackOrder: False,
IsCOPConverter: False
},
GasId: String,
Motability: False,
MotabilityPricingId: 0,
AssistanceProviderId: 0,
AssistanceDetail: String,
ConfiguratorCode: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Guid: String, Reference: String }