Hmx Accounts

<back to all web services

GetPurchaseOrder

The following routes are available for this service:
GET/api/purchaseorders/{id}Get a PurchaseOrder
namespace Hmx.Accounts.Models

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type PurchaseOrderItem() = 
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<PurchaseOrder>)>]
        member val PurchaseOrderId:Int32 = new Int32() with get,set

        [<References(typeof<Product>)>]
        member val ProductId:String = null with get,set

        member val ProductName:String = null with get,set
        member val Quantity:Int32 = new Int32() with get,set
        member val Price:Decimal = new Decimal() with get,set
        member val DiscountDescription:String = null with get,set
        member val DiscountSource:String = null with get,set
        member val Discount:Decimal = new Decimal() with get,set
        member val CreatedDate:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type PurchaseOrderDto() = 
        member val Id:Int32 = new Int32() with get,set
        member val UserId:String = null with get,set
        member val CreatedDate:DateTime = new DateTime() with get,set
        member val PaymentType:String = null with get,set
        member val Void:Boolean = new Boolean() with get,set
        member val Paid:Boolean = new Boolean() with get,set
        member val TransactionIdentifier:String = null with get,set
        member val CouponCode:String = null with get,set
        member val OrderItems:ResizeArray<PurchaseOrderItem> = new ResizeArray<PurchaseOrderItem>() with get,set
        member val Payer:String = null with get,set
        member val BillingAddressLine1:String = null with get,set
        member val BillingAddressCity:String = null with get,set
        member val BillingAddressState:String = null with get,set
        member val BillingAddressPostalCode:String = null with get,set
        member val BillingAddressCountryCode:String = null with get,set

    [<AllowNullLiteral>]
    type GetPurchaseOrder() = 
        member val Id:Int32 = new Int32() with get,set

F# GetPurchaseOrder DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /api/purchaseorders/{id} HTTP/1.1 
Host: accounts.dev.healthmonix.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: 0,
	userId: String,
	createdDate: 0001-01-01,
	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-01
		}
	],
	payer: String,
	billingAddressLine1: String,
	billingAddressCity: String,
	billingAddressState: String,
	billingAddressPostalCode: String,
	billingAddressCountryCode: String
}