| PUT | /CreateOCA/ |
|---|
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
@DataContract
open class CreateOCARequest
{
@DataMember
open var Username:String? = null
@DataMember
open var Timestamp:String? = null
@DataMember
open var Token:String? = null
@DataMember
open var GeneralDetails:GeneralDetails? = null
@DataMember
open var FinanceDetails:FinanceDetails? = null
@DataMember
open var VehicleDetails:VehicleDetails? = null
@DataMember
open var DeliveryDetails:DeliveryDetails? = null
@DataMember
open var ExistingVehicleDetails:ExistingVehicleDetails? = null
@DataMember
open var CreditApplicationIndividual:CreditApplicationIndividual? = null
@DataMember
open var CreditApplicationBusiness:CreditApplicationBusiness? = null
@DataMember
open var PaymentDetails:PaymentDetails? = null
@DataMember
open var DiPDetails:DiPDetails? = null
}
open class GeneralDetails
{
open var OCAApprovalNumber:String? = null
open var EnquiryDateTime:String? = null
open var Brand:Int? = null
open var CustomerReferenceNumber:String? = null
open var CustomerType:String? = null
open var SourceofBusiness:String? = null
open var TagURL:String? = null
open var RequestSource:Int? = null
open var FormID:String? = null
}
open class FinanceDetails
{
open var FinancialProduct:String? = null
open var Duration:Int? = null
open var PaymentRentalAmount:BigDecimal? = null
open var AnnualMileage:Int? = null
open var ExcessMileageRate:BigDecimal? = null
open var CustomerDepositContribution:BigDecimal? = null
open var RetailerDepositContribution:BigDecimal? = null
open var ManufacturerDepositContribution:BigDecimal? = null
open var TotalDepositContribution:BigDecimal? = null
open var CostForCredit:BigDecimal? = null
open var PurchaseActivationFee:BigDecimal? = null
open var TotalAmountPayable:BigDecimal? = null
open var FixedInterestRate:BigDecimal? = null
open var RepresentativeAPR:BigDecimal? = null
open var OptionalPurchasePayment:BigDecimal? = null
open var AdvancedRentalAmount:BigDecimal? = null
open var PaymentProfile:String? = null
open var RandMIncluded:String? = null
open var RandMLevel:String? = null
open var ProductType:String? = null
open var Frequency:String? = null
open var PauseType:String? = null
}
open class VehicleDetails
{
open var OnlineCode:String? = null
open var ModelClass:String? = null
open var ModelBody:String? = null
open var ModelDerivative:String? = null
open var TotalPrice:BigDecimal? = null
open var OTRPrice:BigDecimal? = null
open var VIN:String? = null
open var RegNo:String? = null
open var CurrentMileage:Int? = null
open var FirstRegistrationDate:String? = null
open var NewUsedFlag:String? = null
open var NewVehicleModelOptionDetails:ArrayList<ModelOptionDetails>? = null
}
open class ModelOptionDetails
{
open var Seq:Int? = null
open var Code:String? = null
open var Description:String? = null
open var Price:BigDecimal? = null
}
open class DeliveryDetails
{
open var DealerCode:String? = null
open var DeliveryPreference:String? = null
}
open class ExistingVehicleDetails
{
open var TradeInFlag:String? = null
open var TradeInValue:BigDecimal? = null
open var TradeInRegNo:String? = null
open var SettlementFlag:String? = null
open var SettlementValue:BigDecimal? = null
open var SettlementRegNo:String? = null
}
open class CreditApplicationIndividual
{
open var Title:String? = null
open var Initial:String? = null
open var FirstName:String? = null
open var Surname:String? = null
open var DateofBirth:String? = null
open var Gender:String? = null
open var MaritalStatus:String? = null
open var ResidentialStatus:String? = null
open var CurrentAddress:AddressWithTimeLine? = null
open var PreviousAddresses:ArrayList<PreviousAddress>? = null
open var HomePhone:String? = null
open var MobilePhone:String? = null
open var WorkPhone:String? = null
open var Email:String? = null
open var BankSortCode:String? = null
open var BankAccountNumber:String? = null
open var BankAccountName:String? = null
open var BankName:String? = null
open var BankAddress:Address? = null
open var DoNotEmail:String? = null
open var DoNotMail:String? = null
open var DoNotPhone:String? = null
open var DoNotSMS:String? = null
open var DrivingLicenceNumber:String? = null
open var CurrentEmploymentDetails:CurrentEmploymentDetails? = null
open var PreviousEmploymentDetails:ArrayList<PreviousEmployment>? = null
}
open class AddressWithTimeLine
{
open var AddressLine1:String? = null
open var AddressLine2:String? = null
open var AddressLine3:String? = null
open var Town:String? = null
open var County:String? = null
open var Country:String? = null
open var Postcode:String? = null
open var Duration:String? = null
open var DateStarted:String? = null
}
open class PreviousAddress
{
open var Seq:Int? = null
open var Address:AddressWithTimeLine? = null
}
open class Address
{
open var AddressLine1:String? = null
open var AddressLine2:String? = null
open var AddressLine3:String? = null
open var AddressLine4:String? = null
open var AddressLine5:String? = null
open var Postcode:String? = null
}
open class CurrentEmploymentDetails
{
open var EmployerDetails:EmployerDetails? = null
open var MonthsAtEmployer:String? = null
open var DateEmploymentCommenced:String? = null
open var AnnualIncome:String? = null
}
open class EmployerDetails
{
open var EmploymentType:String? = null
open var EmployersName:String? = null
open var Occupation:String? = null
open var EmployersAddress:AddressWithTimeLine? = null
}
open class PreviousEmployment
{
open var Seq:Int? = null
open var previousEmployment:EmployerDetails? = null
}
open class CreditApplicationBusiness
{
open var TypeOfBusiness:String? = null
open var BusinessContactPosition:String? = null
open var Title:String? = null
open var Initial:String? = null
open var FirstName:String? = null
open var Surname:String? = null
open var CurrentHomeAddress:AddressWithTimeLine? = null
open var HomePhone:String? = null
open var WorkPhone:String? = null
open var MobilePhone:String? = null
open var Email:String? = null
open var DoNotEmail:String? = null
open var DoNotMail:String? = null
open var DoNotPhone:String? = null
open var DoNotSMS:String? = null
open var CompanyName:String? = null
open var CompanyRegistrationNumber:String? = null
open var TradingAs:String? = null
open var BusinessActivity:String? = null
open var NumberOfEmployees:Int? = null
open var YearsTrading:Int? = null
open var Position:String? = null
open var BankSortCode:String? = null
open var BankAccountNumber:String? = null
open var BankAccountName:String? = null
open var BankName:String? = null
open var BankAddress:Address? = null
open var NumberofPartners:Int? = null
open var BusinessPartners:ArrayList<BusinessPartner>? = null
}
open class BusinessPartner
{
open var Seq:Int? = null
open var Title:String? = null
open var Initial:String? = null
open var FirstName:String? = null
open var Surname:String? = null
open var DateofBirth:String? = null
open var Gender:String? = null
open var MaritalStatus:String? = null
open var ResidentialStatus:String? = null
open var CurrentAddress:AddressWithTimeLine? = null
open var PreviousAddresses:ArrayList<PreviousAddress>? = null
open var HomePhone:String? = null
open var MobilePhone:String? = null
open var BusinessPhone:String? = null
open var Relationship:String? = null
open var Email:String? = null
open var CurrentEmploymentDetails:CurrentEmploymentDetails? = null
open var PreviousEmploymentDetails:ArrayList<PreviousEmployment>? = null
open var PartnerType:String? = null
}
open class PaymentDetails
{
open var paymentDetails:ArrayList<PaymentDetail>? = null
}
open class PaymentDetail
{
open var Seq:Int? = null
open var PaymentType:String? = null
open var AmountPaid:BigDecimal? = null
open var PaymentTransactionID:String? = null
open var Description:String? = null
open var PaymentDateTime:String? = null
}
open class DiPDetails
{
open var DiPCustomerId:String? = null
open var DiPTimestamp:String? = null
open var DiPRequestID:String? = null
open var DiPDecisionType:String? = null
open var DiPPrimaryDecisionCode:String? = null
open var DiPDecisionDescription:String? = null
open var DipDecisionDescriptionCode:String? = null
open var DipPrimaryDecisionReason:String? = null
open var DiPPrimaryDecisionReasonDealerMessage:String? = null
open var diPReasons:ArrayList<DiPReasons>? = null
}
open class DiPReasons
{
open var DipReasonSeq:Int? = null
open var DipDecisionCode:String? = null
open var DiPDecisionReason:String? = null
open var DiPDealerMessage:String? = null
}
@DataContract
open class CreateOCARequestResponse
{
@DataMember
open var Code:String? = null
@DataMember
open var Message:String? = null
@DataMember
open var URN:Int? = null
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /CreateOCA/ HTTP/1.1
Host: webservices.mbukdatabase.co.uk
Accept: application/json
Content-Type: application/json
Content-Length: length
{"Username":"String","Timestamp":"String","Token":"String","GeneralDetails":{"OCAApprovalNumber":"String","EnquiryDateTime":"String","Brand":0,"CustomerReferenceNumber":"String","CustomerType":"String","SourceofBusiness":"String","TagURL":"String","RequestSource":0,"FormID":"String"},"FinanceDetails":{"FinancialProduct":"String","Duration":0,"PaymentRentalAmount":0,"AnnualMileage":0,"ExcessMileageRate":0,"CustomerDepositContribution":0,"RetailerDepositContribution":0,"ManufacturerDepositContribution":0,"TotalDepositContribution":0,"CostForCredit":0,"PurchaseActivationFee":0,"TotalAmountPayable":0,"FixedInterestRate":0,"RepresentativeAPR":0,"OptionalPurchasePayment":0,"AdvancedRentalAmount":0,"PaymentProfile":"String","RandMIncluded":"String","RandMLevel":"String","ProductType":"String","Frequency":"String","PauseType":"String"},"VehicleDetails":{"OnlineCode":"String","ModelClass":"String","ModelBody":"String","ModelDerivative":"String","TotalPrice":0,"OTRPrice":0,"VIN":"String","RegNo":"String","CurrentMileage":0,"FirstRegistrationDate":"String","NewUsedFlag":"String","NewVehicleModelOptionDetails":[{"Seq":0,"Code":"String","Description":"String","Price":0}]},"DeliveryDetails":{"DealerCode":"String","DeliveryPreference":"String"},"ExistingVehicleDetails":{"TradeInFlag":"String","TradeInValue":0,"TradeInRegNo":"String","SettlementFlag":"String","SettlementValue":0,"SettlementRegNo":"String"},"CreditApplicationIndividual":{"Title":"String","Initial":"String","FirstName":"String","Surname":"String","DateofBirth":"String","Gender":"String","MaritalStatus":"String","ResidentialStatus":"String","CurrentAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}],"HomePhone":"String","MobilePhone":"String","WorkPhone":"String","Email":"String","BankSortCode":"String","BankAccountNumber":"String","BankAccountName":"String","BankName":"String","BankAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","AddressLine4":"String","AddressLine5":"String","Postcode":"String"},"DoNotEmail":"String","DoNotMail":"String","DoNotPhone":"String","DoNotSMS":"String","DrivingLicenceNumber":"String","CurrentEmploymentDetails":{"EmployerDetails":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}},"MonthsAtEmployer":"String","DateEmploymentCommenced":"String","AnnualIncome":"String"},"PreviousEmploymentDetails":[{"Seq":0,"previousEmployment":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}}]},"CreditApplicationBusiness":{"TypeOfBusiness":"String","BusinessContactPosition":"String","Title":"String","Initial":"String","FirstName":"String","Surname":"String","CurrentHomeAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"},"HomePhone":"String","WorkPhone":"String","MobilePhone":"String","Email":"String","DoNotEmail":"String","DoNotMail":"String","DoNotPhone":"String","DoNotSMS":"String","CompanyName":"String","CompanyRegistrationNumber":"String","TradingAs":"String","BusinessActivity":"String","NumberOfEmployees":0,"YearsTrading":0,"Position":"String","BankSortCode":"String","BankAccountNumber":"String","BankAccountName":"String","BankName":"String","BankAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","AddressLine4":"String","AddressLine5":"String","Postcode":"String"},"NumberofPartners":0,"BusinessPartners":[{"Seq":0,"Title":"String","Initial":"String","FirstName":"String","Surname":"String","DateofBirth":"String","Gender":"String","MaritalStatus":"String","ResidentialStatus":"String","CurrentAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}],"HomePhone":"String","MobilePhone":"String","BusinessPhone":"String","Relationship":"String","Email":"String","CurrentEmploymentDetails":{"EmployerDetails":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}},"MonthsAtEmployer":"String","DateEmploymentCommenced":"String","AnnualIncome":"String"},"PreviousEmploymentDetails":[{"Seq":0,"previousEmployment":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}}],"PartnerType":"String"}]},"PaymentDetails":{"paymentDetails":[{"Seq":0,"PaymentType":"String","AmountPaid":0,"PaymentTransactionID":"String","Description":"String","PaymentDateTime":"String"}]},"DiPDetails":{"DiPCustomerId":"String","DiPTimestamp":"String","DiPRequestID":"String","DiPDecisionType":"String","DiPPrimaryDecisionCode":"String","DiPDecisionDescription":"String","DipDecisionDescriptionCode":"String","DipPrimaryDecisionReason":"String","DiPPrimaryDecisionReasonDealerMessage":"String","diPReasons":[{"DipReasonSeq":0,"DipDecisionCode":"String","DiPDecisionReason":"String","DiPDealerMessage":"String"}]}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"Code":"String","Message":"String","URN":0}