Hmx Accounts

<back to all web services

CreatePurchaseOrder

The following routes are available for this service:
POST/api/purchaseordersCreate 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

HTTP + JSON

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"}]}