POST | /api/purchaseorders | Create a new PurchaseOrder |
---|
import Foundation
import ServiceStack
public class CreatePurchaseOrder : Codable
{
public var userId:String?
public var userEmail:String?
public var createdDate:Date?
public var void:Bool?
public var couponCode:String?
public var orderItems:[PurchaseOrderItemDto] = []
public var paymentType:String?
public var billingInformationDto:BillingInformationDto?
required public init(){}
}
public class PurchaseOrderItemDto : Codable
{
public var id:Int?
public var purchaseOrderId:Int?
public var productId:String?
public var productName:String?
public var quantity:Int?
public var price:Double?
public var discountDescription:String?
public var discountSource:String?
public var discount:Double?
public var createdDate:Date?
required public init(){}
}
public class BillingInformationDto : Codable
{
public var cardNumber:String?
public var cardType:String?
public var expireMonth:Int?
public var expireYear:Int?
public var cvv2:String?
public var firstName:String?
public var lastName:String?
public var city:String?
public var countryCode:String?
public var line1:String?
public var postalCode:String?
public var state:String?
required public init(){}
}
public class CreatePurchaseOrderResponse : Codable
{
public var message:String?
public var status:HttpStatusCode?
public var purchaseOrder:PurchaseOrderDto?
public var details:[Details] = []
required public init(){}
}
public class PurchaseOrderDto : Codable
{
public var id:Int?
public var userId:String?
public var createdDate:Date?
public var paymentType:String?
public var void:Bool?
public var paid:Bool?
public var transactionIdentifier:String?
public var couponCode:String?
public var orderItems:[PurchaseOrderItem] = []
public var payer:String?
public var billingAddressLine1:String?
public var billingAddressCity:String?
public var billingAddressState:String?
public var billingAddressPostalCode:String?
public var billingAddressCountryCode:String?
required public init(){}
}
public class PurchaseOrderItem : Codable
{
public var id:Int?
// @References(typeof(PurchaseOrder))
public var purchaseOrderId:Int?
// @References(typeof(Product))
public var productId:String?
public var productName:String?
public var quantity:Int?
public var price:Double?
public var discountDescription:String?
public var discountSource:String?
public var discount:Double?
public var createdDate:Date?
required public init(){}
}
public class Details : Codable
{
public var code:String?
public var field:String?
public var issue:String?
required public init(){}
}
Swift CreatePurchaseOrder DTOs
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.
POST /api/purchaseorders HTTP/1.1
Host: accounts.dev.healthmonix.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"userId":"String","userEmail":"String","createdDate":"0001-01-01T00:00:00.0000000","void":false,"couponCode":"String","orderItems":[{"id":0,"purchaseOrderId":0,"productId":"String","productName":"String","quantity":0,"price":0,"discountDescription":"String","discountSource":"String","discount":0,"createdDate":"0001-01-01T00:00:00.0000000"}],"paymentType":"String","billingInformationDto":{"cardNumber":"String","cardType":"String","expireMonth":0,"expireYear":0,"cvv2":"String","firstName":"String","lastName":"String","city":"String","countryCode":"String","line1":"String","postalCode":"String","state":"String"}}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"message":"String","status":"Continue","purchaseOrder":{"id":0,"userId":"String","createdDate":"0001-01-01T00:00:00.0000000","paymentType":"String","void":false,"paid":false,"transactionIdentifier":"String","couponCode":"String","orderItems":[{"id":0,"purchaseOrderId":0,"productId":"String","productName":"String","quantity":0,"price":0,"discountDescription":"String","discountSource":"String","discount":0,"createdDate":"0001-01-01T00:00:00.0000000"}],"payer":"String","billingAddressLine1":"String","billingAddressCity":"String","billingAddressState":"String","billingAddressPostalCode":"String","billingAddressCountryCode":"String"},"details":[{"code":"String","field":"String","issue":"String"}]}